Expresiones regulares para buscar texto

Puede realizar operaciones de búsqueda y sustitución complejas en Microsoft Expression Web usando expresiones regulares. Estas expresiones son útiles cuando no conoce el texto o código exacto que está buscando, o cuando lo que busca son todas las apariciones de cadenas de texto o código con una o varias similitudes.

Las expresiones regulares son modelos de texto que describen una o más variaciones del texto o código que se desea buscar. Estas expresiones se componen de caracteres específicos (por ejemplo, las letras de la "a" a la "z") y de caracteres especiales que describen el modelo de texto, como un asterisco (*). Por ejemplo, para buscar todas las variaciones de "page" en el sitio web, se podría buscar "page*". En ese caso, Expression Web encontrará todas las apariciones de "page", "pages", "pager" y cualquier otra palabra que comience por "page" en el sitio web.

Cuando se utilizan expresiones regulares en las búsquedas, existen reglas específicas que controlan las combinaciones de caracteres que realizan búsquedas especificas. Cada expresión regular o combinación de expresiones regulares recibe el nombre de sintaxis. Puede utilizar varias expresiones regulares en una sintaxis para realizar una búsqueda más precisa.

Para usar expresiones regulares, consulte Buscar y reemplazar texto y código.

Sintaxis

Descripción de la expresión

.

Cualquier carácter sirve de comodín para encontrar cualquier otro carácter imprimible o no imprimible, a excepción del carácter de nueva línea (\n).

Por ejemplo, la expresión regular c.t encuentra las cadenas cat, c t, cot, pero no cost. En este ejemplo, el punto (.) es un comodín para un solo carácter. Aparece entre las letras "c" y "t", de modo que cualquier carácter único entre los caracteres "c" y "t" coincidirá con la expresión, incluso si se trata de un espacio.

*

Cero o más encuentra cero o más apariciones de un carácter que preceden a la expresión, encontrando tantos caracteres como sea posible.

La expresión regular .* encuentra cero o más apariciones de un carácter.

Por ejemplo, la expresión regular b.*k encuentra book, back, black, blank y buck. En este ejemplo, combinamos el punto (.) con el asterisco (*) para formar una sintaxis. El punto (.) aparece inmediatamente antes de la expresión asterisco (*). El asterisco (*) encuentra cero o más apariciones de cualquier carácter entre "b" y "k". El punto (.) actúa como comodín de los caracteres entre "b" y "k". En este ejemplo, esto significa que cualquier carácter entre "b" y "k" puede repetirse.

+

Uno o más encuentra una o más apariciones de un carácter que preceden a la expresión, encontrando tantos caracteres como sea posible.

La expresión regular .+ encuentra una o más apariciones de un carácter.

Por ejemplo, la expresión regular bo+. encuentra bob, book y boot. En este ejemplo, combinamos el punto (.) con el signo más (+) para formar una sintaxis. El punto (.) aparece inmediatamente después de la expresión signo más (+). El signo más (+) encuentra una o más apariciones de la letra "o". El punto (.) actúa como comodín del último carácter de cada palabra, que, en este ejemplo, son "b", "k" y "t".

@

Cero o más como mínimo encuentra cero o más apariciones de un carácter que preceden a la expresión, encontrando la menor cantidad de caracteres que sea posible.

La expresión regular .@ significa que se encuentren cero o más apariciones de un carácter.

Por ejemplo, la expresión regular a.@x encuentra "abx" dentro de "abxbxb" y "acx" dentro de "acxcxc". En este ejemplo, combinamos el punto (.) con el signo arroba (@) para formar una sintaxis. El punto (.) aparece inmediatamente antes de la expresión arroba (@). La arroba (@) encuentra cero o más apariciones de cualquier carácter entre "a" y "x". En este ejemplo, el punto (.) actúa como comodín de los caracteres "b" y "c" situados entre los caracteres "a" y "x".

#

Uno o más como mínimo encuentra una o más apariciones de un carácter que preceden a la expresión, encontrando la menor cantidad de caracteres que sea posible.

Por ejemplo, la expresión regular si.#er encuentra "sicker" o "silkier". En este ejemplo, combinamos el punto (.) con el signo de número (#) para formar una sintaxis. El punto (.) aparece inmediatamente antes de la expresión signo de número (#). El signo de número (#) encuentra una o más apariciones de cualquier carácter entre "si" y "er". El punto (.) actúa como comodín de los caracteres "c'" y "k" en la palabra sicker, y "l", "k" e "i" en la palabra silkier.

[ ]

Un carácter cualquiera del conjunto encuentra cualquiera de los caracteres situados dentro de los corchetes ([ ]). Es posible especificar intervalos de caracteres mediante un guión (-), como en [a-z].

Ejemplos:

  • La expresión regular c[aou]t encuentra cat y cot, pero no cet ni cit.

  • La expresión normal [0-9] significa coincidencia con cualquier dígito. También es posible especificar varios intervalos de letras.

  • La expresión regular [A-Za-z] significa coincidencia con todas las letras mayúsculas y minúsculas.

^

Inicio de línea limita la coincidencia al principio de una línea.

Por ejemplo, la expresión regular ^When in encuentra cualquier cadena que comience por "When in" y que aparezca también al principio de la línea, como "When in the course of human events" o "When in town, call me". Sin embargo, esta expresión regular no encuentra "What and when in the course of human events" si aparece al principio de la línea.

$

Fin de línea limita la coincidencia al final de una línea.

Por ejemplo, la expresión regular professional$ encuentra el fin de la cadena "He is a professional", pero no "They are a group of professionals".

^^

Comienzo de archivo limita la coincidencia al principio de un archivo. Sólo funciona al buscar texto en el código fuente o en archivos de texto.

Por ejemplo, para encontrar la primera etiqueta HTML del principio de un archivo, utilice la siguiente expresión regular: ^^

$$

Fin de archivo limita la coincidencia al final de un archivo. Sólo funciona al buscar texto en el código fuente o en archivos de texto.

Por ejemplo, para encontrar la última etiqueta HTML del final de un archivo (sin espacios después de la etiqueta), utilice la siguiente expresión regular: $$

|

O indica una elección entre dos elementos, encontrando así la expresión situada antes o después del símbolo O (|).

Por ejemplo, la expresión regular (him|her) coincide con las siguientes apariciones "it belongs to him" o "it belongs to her" pero no coincide con la línea "it belongs to them".

\

Carácter especial Escape encuentra el carácter que sigue a la barra inversa ( \ ). Esto permite buscar caracteres que se utilizan en la sintaxis de expresiones regulares, como las llaves de apertura ({) o los símbolos de intercalación (^) u otros tipos de caracteres especiales.

Por ejemplo, puede usar \$ para encontrar el signo de moneda ($) en lugar de implementar la expresión regular para "limitar la coincidencia al final de una línea". Asimismo, puede usar la expresión \. para encontrar el carácter de punto (.) en lugar de encontrar cualquier carácter individual, que es lo que hace la expresión regular punto (.).

{}

Etiquetar expresión etiqueta el texto encontrado por la expresión situada entre las llaves. Puede encontrar otra aparición del texto etiquetado en una expresión de búsqueda o insertar el texto etiquetado en una expresión de reemplazo mediante \N.

Por ejemplo, suponga que desea encontrar dos palabras consecutivas duplicadas. Para buscar, utilice la siguiente expresión: {.#} \1

Suponiendo que las palabras consecutivas estén separadas por un único espacio, agregará un espacio entre la llave de cierre (}) y la barra diagonal inversa ( \ ).

En este ejemplo, combinamos el signo de número (#) y el punto (.) con las llaves ({}) para crear una sintaxis. En esta expresión, .# representa cualquier carácter consecutivo. Puesto que esta parte de la expresión está incluida entre llaves ({}), los caracteres consecutivos se etiquetarán y se hará referencia a ellos como \1. Esta expresión encontrará cualquier carácter consecutivo seguido de un espacio, seguido de esos mismos caracteres consecutivos exactos.

\N

La expresión etiquetada Nth en una expresión de búsqueda, \N encuentra el texto que coincide con la expresión etiquetada Nth, donde N es un número del 1 al 9.

En una expresión de reemplazo, \N inserta el texto encontrado por la expresión etiquetada N, donde N es un número de 1 a 9. \0 inserta el texto encontrado por la expresión de búsqueda completa.

Por ejemplo, suponga que desea encontrar dos palabras consecutivas duplicadas y reemplazarlas por una única palabra. Para buscar, utilice la siguiente expresión: {.#} \1

Suponiendo que las palabras consecutivas estén separadas por un único espacio, agregará un espacio entre la llave de cierre (}) y la barra diagonal inversa ( \ ). En este ejemplo, combinamos el signo de número (#) y el punto (.) con las llaves ({}) para crear una sintaxis.

Para reemplazar, utilice la siguiente expresión: \1

\1 representa lo que se encontró en el primer par de llaves en la cadena de búsqueda. Básicamente, al utilizar \1 en la acción de reemplazo, se reemplazan las palabras consecutivas duplicadas por una sola copia de la palabra.

( )

Agrupar expresión marca el comienzo y el final de una subexpresión.

Una subexpresión es una expresión regular que aparece entre paréntesis ( ), como la siguiente: (ha)+. En este ejemplo, combinamos el signo más (+) con la expresión de grupo paréntesis ( ) para crear una sintaxis. La subexpresión es (ha) porque se encuentra entre paréntesis ( ). Cuando agrega el signo más (+), la expresión permite encontrar pares de letras que se repiten. El signo más (+) representa una o más apariciones de "ha".

Esta expresión encuentra las siguientes apariciones: "haha" y "hahaha".

~x

Evitar coincidencia evita una coincidencia cuando x aparece en este punto de la expresión.

Por ejemplo, la expresión regular real~(ity) encuentra "real" en "realty" y "really", pero evita la coincidencia de "real" en "reality".

\n

Salto de línea encuentra una nueva línea en la vista Código , o una etiqueta <br> en la vista Diseño.

La sintaxis (\n) es un método abreviado que permite encontrar todos los saltos de línea.

\t

Tabulación encuentra un carácter de tabulación único.

Por ejemplo, si desea buscar todos los caracteres tabulados únicos del principio de una línea, la expresión normal tendría este aspecto:

^\t+

En este ejemplo, combinamos el símbolo de intercalación (^) y el signo más (+) con la tabulación (\t) para crear una sintaxis. El símbolo de intercalación (^) que precede a la expresión de carácter de tabulación único, limita la coincidencia a todos los caracteres tabulados del principio de la línea. El signo más (+) representa la coincidencia con uno o más caracteres de tabulación.

[^]

Un carácter cualquiera no perteneciente al conjunto encuentra cualquier carácter que no se encuentre en el conjunto de caracteres que sigue al símbolo de intercalación (^).

Por ejemplo, para encontrar cualquier carácter excepto los comprendidos en el intervalo, utilice el símbolo de intercalación (^) como primer carácter después del corchete de apertura. La expresión [^269A-Z] buscará cualquier carácter excepto 2, 6, 9 y cualquier carácter alfabético en mayúsculas.

n

Repetir expresión encuentra n apariciones de la expresión que precede al símbolo de intercalación (^).

Por ejemplo, con n igual a 4, la expresión [0-9]^4 encuentra cualquier secuencia de cuatro dígitos. En este ejemplo, combinamos la sintaxis del conjunto de caracteres ([ ]) con la sintaxis de repetición (^n) para señalar un uso más realista de las expresiones regulares.

:a

Carácter alfanumérico coincide con la expresión ?[a-zA-Z0-9].

Puede utilizar la siguiente expresión, [a-zA-Z0-9], para encontrar una aparición de una letra (mayúscula o minúscula) o un número. También se conocen como apariciones alfanuméricas. Puede utilizar la expresión abreviada :a para todas las apariciones de [a-zA-Z0-9].

:b

Espacio en blanco encuentra cualquier espacio en blanco en el código o el texto.

Por ejemplo, para encontrar un un único carácter de espacio en blanco al principio de una línea, utilice la siguiente expresión regular:^:b.

:c

Carácter alfabético coincide con la expresión [a-zA-Z]. Esta expresión permite encontrar todas las letras mayúsculas o minúsculas.

Puede utilizar la expresión abreviada :c para todas las apariciones de [a-zA-Z].

:d

Dígito decimal coincide con la expresión [0-9]. Esta expresión permite encontrar cualquier dígito.

Por ejemplo, imagine que desea encontrar un número de la seguridad social en un archivo de texto. El formato de los números de la seguridad social en los EE.UU. es 999-99-9999. Deberá usar la expresión :d^3-:d^2-:d^4 o, si utiliza [0-9], la expresión equivalente [0-9]^3-[0-9]^2-[0-9]^4].

Puede utilizar la expresión abreviada :d para todas las apariciones de [0-9].

:h

Dígito hexadecimal coincide con la expresión ?[0-9a-fA-F]+.

Utilice esta expresión cuando desee encontrar una combinación hexadecimal de letras en mayúsculas o minúsculas entre "A" y "F", y cualquier número.

Por ejemplo, imagine que las páginas del sitio web tienen varios colores de fondo y desea cambiar el color de dichas páginas al negro o 000000. Sin embargo, no conoce los números hexadecimales de los colores existentes. Utilice la siguiente expresión regular para buscar todos los números hexadecimales:

\#:h

Podría buscar con [0-9a-fA-F], pero en este ejemplo combinamos la barra diagonal inversa (\) y el signo de número (#) con la sintaxis de dígito hexadecimal (:h). \# encuentra un signo de número (#) que no pertenezca a una expresión y :h encuentra cualquier secuencia de caracteres hexadecimales.

Para reemplazar los números hexadecimales existentes, escriba el número hexadecimal del color de fondo que desea: 000000.

:i

Identificador coincide con la expresión ?[a-zA-Z-$][a-zA-Z0-9_$]*.

Cuando trabaje con código, si desea encontrar todos los identificadores de programa, puede utilizar la expresión abreviada :i para no tener que escribir la larga expresión anterior.

:n

Número racional coincide con la expresión ([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)|([0-9]+).

Si desea encontrar todos los números que contienen un punto decimal, puede utilizar la expresión abreviada :n para no tener que escribir la larga expresión anterior.

:q

Cadena entrecomillada coincide con la expresión ("[~"]*")|('[~']*').

Si desea encontrar todas las citas entre comillas, puede utilizar la expresión abreviada :q para no tener que escribir la larga expresión anterior.

:w

Cadena alfabética coincide con la expresión ?[a-zA-Z]+.

Esta sintaxis es un método abreviado que permite buscar uno o más caracteres alfabéticos, ya sea en mayúsculas o en minúsculas.

:z

Número entero decimal coincide con la expresión [0-9]+.

Esta sintaxis es un método abreviado que permite buscar cualquier número igual o superior a cero.

Adiciones de comunidad

AGREGAR
Mostrar: