Hoja de Trucos de Regex
Última actualización
Clases de caracteres
Coincide con un solo carácter de un conjunto.
| Token | Coincide con |
|---|---|
. | Cualquier carácter excepto un salto de línea |
\d | Cualquier dígito (0-9) |
\D | Cualquier carácter que no sea dígito |
\w | Carácter de palabra (letra, dígito, guion bajo) |
\W | Cualquier carácter que no sea de palabra |
\s | Cualquier espacio en blanco (espacio, tabulación, salto de línea) |
[abc] | Cualquiera de a, b o c |
[a-z] | Cualquier letra minúscula dentro del rango |
[^abc] | Cualquier carácter excepto a, b o c |
Cuantificadores
Especifica cuántas veces se repite el token anterior.
| Token | Coincide con |
|---|---|
* | Cero o más |
+ | Uno o más |
? | Cero o uno (opcional) |
{3} | Exactamente 3 veces |
{2,4} | Entre 2 y 4 veces |
{2,} | 2 o más veces |
*? | Perezoso: tan pocos como sea posible |
+? | Perezoso: uno o más, lo mínimo |
Anclas y límites
Coincide con posiciones en lugar de caracteres.
| Token | Coincide con |
|---|---|
^ | Inicio de la cadena (o línea) |
$ | Fin de la cadena (o línea) |
\b | Un límite de palabra |
\B | Un límite que no es de palabra |
^abc$ | Una cadena que es exactamente abc |
\bword\b | word como palabra completa |
Grupos y captura
Agrupa tokens y captura lo que coinciden.
| Token | Coincide con |
|---|---|
(abc) | Grupo de captura, almacenado como grupo 1 |
(?:abc) | Grupo sin captura |
(?<year>\d{4}) | Grupo de captura con nombre year |
(ab)+ | Repite todo el grupo |
\1 | Referencia hacia atrás al grupo 1 |
\k<year> | Referencia hacia atrás a un grupo con nombre |
Alternancia
Coincide con un patrón u otro.
| Token | Coincide con |
|---|---|
a|b | a o b |
cat|dog | La palabra cat o dog |
(jpg|png|gif) | Cualquiera de las alternativas, capturada |
gr(a|e)y | gray o grey |
^(yes|no)$ | Exactamente yes o exactamente no |
Lookarounds
Comprueba qué viene antes o después sin consumirlo.
| Token | Coincide con |
|---|---|
(?=abc) | Lookahead: seguido de abc |
(?!abc) | Lookahead negativo: no seguido de abc |
(?<=abc) | Lookbehind: precedido de abc |
(?<!abc) | Lookbehind negativo: no precedido de abc |
\d+(?= dollars) | Dígitos solo cuando van seguidos de dollars |
(?<=\$)\d+ | Dígitos solo cuando van precedidos de $ |
Banderas
Modifica cómo se aplica todo el patrón.
| Bandera | Qué hace |
|---|---|
g | Global: encuentra todas las coincidencias, no solo la primera |
i | Coincidencia sin distinguir mayúsculas |
m | Multilínea: ^ y $ coinciden con los finales de línea |
s | Dotall: . también coincide con saltos de línea |
u | Modo Unicode |
x | Extendido: ignora los espacios en blanco del patrón |
Patrones comunes
Patrones listos para adaptar a la validación diaria.
| Patrón | Coincide con |
|---|---|
^\d+$ | Un número entero (solo dígitos) |
^[\w.+-]+@[\w-]+\.[\w.-]+$ | Una dirección de correo básica |
https?:\/\/[^\s]+ | Una URL http o https |
^\d{4}-\d{2}-\d{2}$ | Una fecha como 2026-05-27 |
^\d{3}-\d{3}-\d{4}$ | Un número de teléfono de EE. UU. |
^#?[0-9a-fA-F]{6}$ | Un color hexadecimal de 6 dígitos |
\s+ | Uno o más caracteres de espacio en blanco |
Cada token de regex que necesitas, en una sola página. Esta hoja de trucos de regex es una referencia rápida para construir expresiones regulares: clases de caracteres, cuantificadores, anclas, grupos, alternancia, lookarounds y banderas.
La sintaxis aquí sigue el sabor común PCRE / JavaScript que usan la mayoría de los lenguajes. Copia un patrón o pruébalo en vivo en la herramienta de comprobación de regex para ver exactamente qué coincide, con el playground de JS a un clic.
Preguntas frecuentes sobre la hoja de trucos de regex
¿Esta hoja de trucos de regex es gratis?
¿Cuál es la diferencia entre cuantificadores codiciosos y perezosos?
* y + coinciden con todo lo posible y luego devuelven caracteres si el resto del patrón los necesita. Los cuantificadores perezosos, que se escriben añadiendo ? (como *? o +?), coinciden con lo mínimo posible y solo se expanden cuando se les obliga. Por ejemplo, en <a><b> el patrón <.+> coincide de forma codiciosa con toda la cadena, mientras que <.+?> coincide solo con <a>.¿Qué es un grupo de captura en regex?
(\d{4}), cuyo texto coincidente se guarda y se numera para que puedas reutilizarlo o extraerlo. Lo referencias más tarde con una referencia hacia atrás como \1, o le das un nombre con (?<year>\d{4}) para mayor claridad. Si quieres agrupar tokens sin capturarlos, usa un grupo sin captura (?:...).