Regex
Corto para expresión regular , a regex es una cadena de texto que le permite crear patrones que ayudan a hacer coincidir, ubicar y administrar el texto. Perl es un gran ejemplo de lenguaje de programación que utiliza expresiones regulares. Sin embargo, es solo uno de los muchos lugares donde puede encontrar expresiones regulares. Las expresiones regulares también se pueden utilizar desde la línea de comandos y en editores de texto para buscar texto dentro de un archivo.
Al intentar comprender las expresiones regulares por primera vez, parece que se trata de un idioma diferente. Sin embargo, dominar las expresiones regulares puede ahorrarle miles de horas si trabaja con texto o necesita analizar grandes cantidades de datos. A continuación se muestra un ejemplo de una expresión regular con cada uno de sus componentes etiquetados. Esta expresión regular también se muestra en los ejemplos de programación de Perl que se muestran más adelante en esta página.
Los conceptos básicos de las expresiones regulares (hoja de referencia)
Mirar el ejemplo anterior puede resultar abrumador. Sin embargo, una vez que comprenda la sintaxis básica de cómo operan los comandos de expresión regular, puede leer el ejemplo anterior como si estuviera leyendo esta oración. Desafortunadamente, no todos los programas, comandos y lenguajes de programación usan las mismas expresiones regulares, pero todos comparten similitudes.
Personaje | ¿Qué hace? | Ejemplo | Partidos |
---|---|---|---|
^ | Coincide con el comienzo de la línea | ^abc | abc, abcdef .., abc123 |
$ | Partidos fin de la línea | abc$ | mi: abc, 123abc, theabc |
. | Coincide con cualquier personaje | C.A | abc, asg, a2c |
| | Operador OR | abc | xyz | abc o xyz |
(...) | Capture cualquier cosa que coincida | (a B C) | Captura 'a' y 'c' |
(?:...) | Grupo no capturador | (a B C) | Captura 'a' pero solo grupos 'c' |
[...] | Coincide con todo lo contenido en soportes | [abc] | a, b o c |
[^...] | Coincide con todo lo que no esté entre corchetes | [^abc] | xyz, 123, 1de |
[Arizona] | Coincide con cualquier carácter entre 'a' y 'z' | [b-z] | antes de Cristo, mente, xyz |
{x} | La cantidad exacta 'x' de veces que debe coincidir | (abc){2} | abcabc |
{x,} | Coincide con 'x' cantidad de veces o más | (abc){2,} | abcabc, abcabcabc |
{x,y} | Coincidencia entre tiempos 'x' e 'y'. | (a){2,4} | aa, aaa, aaaaa |
* | Partido codicioso que coincide con todo en lugar del * | a B C | abc, abbcc, abcdc |
+ | Coincide con el personaje antes + una o más veces | a + c | ac, aac, aaac, |
? | Coincide con el personaje antes de? cero o una vez. Además, se utiliza como una coincidencia no codiciosa. | a B C | ac, abc |
Escapa del personaje después de la barra invertida o crea una secuencia de escape . | a sc | una c |
Caracteres de escape (secuencia de escape)
NotaLos caracteres de escape distinguen entre mayúsculas y minúsculas.
Personaje | ¿Qué hace? |
---|---|
Se escapará cualquier carácter que no se mencione a continuación y que esté precedido por . Por ejemplo, . coincide con un punto y no realiza la función mencionada anteriormente. Los caracteres que deben escaparse son () [] {} ^ $. | * +? | |