Referencia de metacaracteres y sintaxis de expresiones regulares principales

Las expresiones regulares (regex) son descripciones de patrones formales utilizadas por motores de búsqueda, compiladores y aplicaciones web para validar, extraer y reemplazar datos de cadenas.
| Metacarácter | Significado | Práctico Ejemplo | Coincidencias |
|---|---|---|---|
^ | Iniciar de cadena/línea | ^https | Cadenas que comienzan con "https" |
$ | Fin de cadena / línea | \.png$ | Cadenas que terminan en ".png" |
. | Cualquier carácter (excepto nueva línea) | c.t | "gato", "cuna", "c9t" |
\d | Cualquier dígito (equivalente a [0-9]) | \d{4} | "2026" |
\w | Palabra carácter (alfanumérico + _) | \w+ | "usuario _123" |
\s | Cualquiera espacios en blanco (espacio, tabulación, nueva línea) | \s+ | " " |
+ | Uno o más ocurrencias | a+ | "a", "aaa" |
* | Cero o más apariciones | a* | "", "a", "aaa" |
? | Cero o una ocurrencia (opcional) | https? | "http", "https" |
{n,m} | Entre n y m repeticiones | \d{2,4} | "99", "1999" |
Copiar y pegar patrones de expresiones regulares probados para aplicaciones web
1. Validación de dirección de correo electrónico (RFC 5322 simplificada)

Valida los correos electrónicos modernos estándar con extensiones de dominio válidas:
^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$
2. Validación de contraseña segura
Requiere más de 8 caracteres, al menos 1 letra mayúscula, 1 letra minúscula, 1 número y 1 símbolo especial:
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$
3. Códigos de colores hexadecimales
Coincide con códigos hexadecimales de 3, 6 y 8 dígitos (con canal alfa):
^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$
4. Números de teléfono internacionales (formato E.164)

Coincide con números de teléfono internacionales estándar que comienzan con un signo más:
^\+[1-9]\d{1,14}$
Seguridad ReDoS: Prevención de retrocesos catastróficos

La denegación de servicio de expresión regular (ReDoS) es una vulnerabilidad de seguridad crítica. Cuando una expresión regular utiliza cuantificadores ambiguos anidados como:
(a+)+$
Evaluar una entrada que no coincide como "aaaaaaaaaaaaaaaaaaaaaaaaaaaa!" hace que el motor de expresiones regulares NFA pruebe millones de permutaciones. En un backend de producción de Node.js o Python, esto bloquea el bucle de eventos y bloquea la CPU al 100%.
Reglas para evitar ReDoS:
- Nunca anide cuantificadores codiciosos dentro de otros cuantificadores.
- Utilice cuantificadores posesivos o grupos atómicos si su tiempo de ejecución lo admite.
- Pruebe sus patrones contra cadenas negativas usando nuestra Probador de Expresiones Regulares (Regex Tester).

Guías complementarias recomendadas
Explore tutoriales y utilidades complementarios de este grupo de temas para mejorar su flujo de trabajo digital: