Expresiones Regulares (regex) – Hoja de trucos.
Una guía de referencia rápida para las expresiones regulares, incluyendo símbolos, anclas, grupos, afirmaciones y algunos patrones de muestra para ayudarle a empezar .
Anclas | |||
^ | Inicio de la secuencia, o inicio de la línea en el patrón de líneas múltiples | ||
\A | Inicio de cadena | ||
$ | Final de la cadena, o al final de la línea en el patrón de líneas múltiples | ||
\Z | Final de cadena | ||
\b | límite de la palabra | ||
\B | No límite de palabra | ||
\< | Inicio de la palabra | ||
\> | Fin de la palabra | ||
Clases de caracteres | |||
\c | carácter de control | ||
\s | El espacio en blanco | ||
\S | No es un espacio en blanco | ||
\d | Dígito | ||
\D | no dígitos | ||
\w | Palabra | ||
\W | no palabra | ||
\x | dígito hexadecimal | ||
\O | dígito octal | ||
POSIX | |||
[:upper:] | Letras mayúsculas | ||
[:lower:] | Letras minusculas | ||
[:alpha:] | todas las cartas | ||
[:alnum:] | Cifras y letras | ||
[:digit:] | dígitos | ||
[:xdigit:] | Los dígitos hexadecimales | ||
[:punct:] | Puntuación | ||
[:blank:] | Espacios y los tabuladores | ||
[:space:] | Los caracteres en blanco | ||
[:cntrl:] | Los caracteres de control | ||
[:graph:] | Los caracteres impresos | ||
[:print:] | Los caracteres impresos y espacios | ||
[:word:] | Cifras, letras y guión bajo | ||
Afirmaciones | |||
?= | afirmación Lookahead | ||
?! | búsqueda negativa hacia delante | ||
?<= | aserción hacia atrás | ||
?!= or ?<! | búsqueda hacia atrás negativo | ||
?> | Una vez una Subexpresiones | ||
?() | Condición [si a continuación] | ||
?()| | Condición [si entonces si no] | ||
?# | Comentario | ||
Cuantificadores | |||
* | 0 o más | {3} | exactamente 3 |
+ | 1 o más | {3,} | 3 o más |
? | 0 o 1 | {3,5} | 3, 4 o 5 |
Agrega un ? a un cuantificador para que sea ungreedy. | |||
Secuencias de escape | |||
\ | Escapar carácter siguiente | ||
\Q | Comience secuencia literal | ||
\E | Poner fin a la secuencia literal | ||
Escapar es una forma de tratamiento de caracteres que tienen un significado especial en las expresiones regulares, literalmente, en lugar de como caracteres especiales. | |||
Metacaracteres comunes | |||
^ | [ | . | $ |
{ | * | ( | \ |
+ | ) | | | ? |
< | > | ||
El carácter de escape es por lo general \ | |||
Caracteres especiales | |||
\n | Nueva línea | ||
\r | retorno de carro | ||
\t | Lengüeta | ||
\v | pestaña vertical | ||
\f | Avance de página | ||
\xxx | xxx carácter octal | ||
\xhh | hh carácter hexadecimal | ||
Grupos y rangos | |||
. | Cualquier carácter excepto la nueva línea (\ n) | ||
(a|b) | a o b | ||
(…) | Grupo | ||
(?:…) | Pasiva grupo (no captura) | ||
[abc] | Rango (A, B o C) | ||
[^abc] | No (A, B o C) | ||
[a-q] | Letra minúscula de la A a la Q | ||
[A-Q] | letra mayúscula de la A a Q | ||
[0-7] | Dígitos del 0 al 7 | ||
\x | Grupo / número de sub-patrón «x» | ||
Los rangos son ambos inclusive. | |||
Modificadores de patrones | |||
g | partido Global | ||
i * | Entre mayúsculas y minúsculas | ||
m * | líneas múltiples | ||
s * | Tratar como cadena única línea | ||
x * | Permitir comentarios y espacios en el patrón | ||
e * | evaluar el reemplazo | ||
U * | patrón Ungreedy | ||
* Modificador de PCRE | |||
Cadenas | |||
$n | grupo no pasivo enésima | ||
$2 | Xyz en / ^ (abc (xyz)) $ / | ||
$1 | Xyz en / ^ (abc ?:) (xyz) $ / | ||
$` | Antes de cadena coincidente | ||
$’ | Después cadena coincidente | ||
$+ | Última cadena coincidente | ||
$& | Toda la cadena coincidente | ||
Algunas implementaciones de expresiones regulares utilizan \ en lugar de $. |
Descarga esta tabla en pdf y texto plano aquí:
Artículo Original en Inglés por: Dave Child
Traducción al Español y Adaptación: Ing. Rafael Díaz