Caracteres
| Patron | Coincide con | Ejemplo de coincidencia |
|---|---|---|
. | Cualquier carácter excepto nueva línea | a.c coincide con abc, a1c, a-c |
\d | Cualquier digito [0-9] | \d{3} coincide con 123 |
\D | Cualquier no digito | \D+ coincide con abc en abc123 |
\w | Carácter de palabra [a-zA-Z0-9_] | \w+ coincide con hello_world |
\W | Carácter que no es de palabra | \W coincide con @ en user@host |
\s | Espacio en blanco (espacio, tabulación, nueva línea) | \s+ coincide con espacios entre palabras |
Cuantificadores
| Patron | Significado | Ejemplo |
|---|---|---|
* | 0 o más (codicioso) | ab*c coincide con ac, abc, abbc |
+ | 1 o más (codicioso) | ab+c coincide con abc, abbc pero no ac |
? | 0 o 1 (opcional) | colou?r coincide con color y colour |
{3} | Exactamente 3 | \d{3} coincide con 123 pero no 12 |
{2,5} | Entre 2 y 5 | \w{2,5} coincide de ab a abcde |
{3,} | 3 o más | \d{3,} coincide con 123, 1234, 12345 |
*? | 0 o más (perezoso) | ".*?" coincide con la cadena entre comillas más corta |
+? | 1 o más (perezoso) | <.+?> coincide con una sola etiqueta HTML |
Anclas
| Patron | Significado | Ejemplo |
|---|---|---|
^ | Inicio de cadena | ^Hola coincide con Hola mundo |
$ | Fin de cadena | mundo$ coincide con Hola mundo |
\b | Limite de palabra | \bgato\b coincide con gato pero no gatos |
\B | Limite que no es de palabra | \Bgato\B coincide con gato en conjuntogatocompuesto |
Grupos y Alternancia
| Patron | Significado |
|---|---|
(abc) | Grupo de captura |
(?:abc) | Grupo no capturador |
(?<nombre>abc) | Grupo de captura con nombre |
a|b | Alternancia (o) |
\1 | Retroreferencia al grupo 1 |
Clases de Caracteres
| Patron | Coincide con |
|---|---|
[abc] | Cualquiera de a, b o c |
[^abc] | Cualquier carácter excepto a, b, c |
[a-z] | Cualquier letra minuscula de la a a la z |
[0-9] | Cualquier digito del 0 al 9 |
[a-zA-Z] | Cualquier letra mayuscula o minuscula |
Lookarounds
| Patron | Significado |
|---|---|
(?=...) | Lookahead positivo |
(?!...) | Lookahead negativo |
(?<=...) | Lookbehind positivo |
(?<!...) | Lookbehind negativo |
Banderas
| Bandera | Nombre | Efecto |
|---|---|---|
g | Global | Encuentra todas las coincidencias, no solo la primera |
i | Insensible a mayusculas | Ignora diferencia entre mayusculas y minusculas |
m | Multilinea | ^ y $ coinciden con inicio/fin de línea, no solo de cadena |
s | DotAll | . coincide con caracteres de nueva línea |
u | Unicode | Habilita el emparejamiento completo Unicode |
Referencias Rapidas
(.*?)captura el mínimo necesario (perezoso)(.*)captura todo lo posible (codicioso)['"].*?['"]coincide con cadenas entre comillas\d{3}-\d{2}-\d{4}coincide con números de seguro social de EE.UU.^[\w.-]+@[\w.-]+\.\w{2,}$coincide con direcciones de correo básica- Para URL completa:
https?:\/\/[\w.-]+(\.[\w.-]+)+[\w.,@?^=%&:/~+#-]*[\w@?^=%&/~+#-]