Hoja de Referencia de Regex: Patrones que Todo Desarrollador Necesita
Las expresiones regulares parecen magia negra hasta que aprendes los patrones. Una vez que lo haces, se vuelven indispensables para búsqueda de texto, validación, extracción de datos y manipulación de cadenas.
Toma un patrón, pégalo en nuestro Probador de Regex para experimentar, y adáptalo a tus necesidades.
Sintaxis Principal de Regex
Clases de Caracteres
| Patrón | Coincide con | Ejemplo |
|---|---|---|
. | Cualquier carácter excepto nueva línea | a.c coincide con "abc", "a1c" |
\d | Cualquier dígito (0-9) | \d{3} coincide con "123" |
\w | Carácter de palabra (letra, dígito, guion bajo) | \w+ coincide con "hello_1" |
\s | Espacio en blanco | \s+ coincide con espacios |
[abc] | Cualquiera entre a, b o c | [aeiou] coincide con vocales |
[^abc] | Cualquier carácter excepto a, b, c | [^0-9] coincide con no-dígitos |
[a-z] | Cualquier carácter en rango | [A-Za-z] coincide con letras |
Cuantificadores
| Patrón | Significado |
|---|---|
* | Cero o más |
+ | Uno o más |
? | Cero o uno |
{n} | Exactamente n veces |
{n,m} | Entre n y m veces |
Anclas y Grupos
| Patrón | Significado |
|---|---|
^ | Inicio de cadena |
$ | Fin de cadena |
\b | Límite de palabra |
(abc) | Grupo de captura |
(?:abc) | Grupo de no captura |
a|b | Alternancia (o) |
(?=abc) | Lookahead positivo |
Patrones Prácticos
Validación de Email
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
Coincidencia de URLs
https?:\/\/[\w.-]+(?:\.[a-zA-Z]{2,})(?:\/[\w./?%&=-]*)?
Fortaleza de Contraseña
Al menos 8 caracteres, una mayúscula, una minúscula, un dígito, un carácter especial:
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*])[A-Za-z\d!@#$%^&*]{8,}$
Para generar contraseñas fuertes, usa nuestro Generador de Contraseñas.
Códigos de Color Hexadecimal
^#?([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$
Convierte entre formatos de color con nuestro Convertidor de Color.
Validación de UUID
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
Genera UUIDs válidos con nuestro Generador de UUID.
Consejos de Rendimiento de Regex
- Sé específico —
[a-zA-Z]es más rápido que. - Evita el backtracking catastrófico — Cuantificadores anidados como
(a+)+causan tiempo exponencial - Usa grupos de no captura cuando no necesites el valor
- Ancla tus patrones —
^pattern$es más rápido que una búsqueda sin anclar - Prueba con casos límite — Usa nuestro Probador de Regex antes de desplegar
Preguntas Frecuentes
¿Cuál es la diferencia entre * y +?
* coincide con cero o más ocurrencias, + requiere al menos una. Así que ab*c coincide con "ac" pero ab+c no.
¿Cómo hago que regex sea insensible a mayúsculas?
Usa la bandera i: /pattern/i en JavaScript, re.IGNORECASE en Python.
Recursos Relacionados
- Regex para Validación de Email — patrones que funcionan en producción
- Herramienta Probador de Regex — prueba y depura patrones en tiempo real
- Generador de Contraseñas — genera contraseñas que coincidan con reglas regex
- Generador de UUID — genera UUIDs válidos