Validadores del mundo real
Valida los formatos que ves cada día: enteros, decimales, colores hex, horas, fechas, correos, slugs, direcciones IP, códigos ZIP y más.
Lee las reglas: Patrones comunes en la Guía →Entrénalo: Validadores de formatos →
Se basa en Lookarounds
Qué aprenderás
Pasos · 14
- 01Validar el mundo realInstrucciones
- 02Números enterosCaza
- 03Números decimalesCaza
- 04Colores hexCaza
- 05Formato de 24 horasCaza
- 06Fechas ISOCaza
- 07Correos simplesCaza
- 08Slugs de URLCaza
- 09Direcciones IPv4Caza
- 10Códigos ZIP de EE. UU.Caza
- 11HashtagsCaza
- 12Nombres de usuarioCaza
- 13Golf: hex cortoCaza
- 14Validadores completadosInstrucciones
Patrones de validación con regex
Una regex de validación responde a una sola pregunta: ¿tiene este texto la forma correcta? Los formularios de registro, las hojas de cálculo y los archivos de configuración están llenos de valores que deberían tener cierto aspecto, como una hora, una fecha, un código de color o una dirección de correo. Rodea el patrón con ^ y $ y tendrá que coincidir con el valor entero, así que un espacio suelto o un carácter de más hacen fallar la comprobación.
Cada formato se construye con piezas pequeñas. \d es un dígito, {4} pide exactamente cuatro, ? hace opcional una parte y un grupo como (am|pm) enumera las opciones permitidas. Los rangos numéricos son lo más delicado: (100|[1-9]?\d) cubre del 0 al 100, mientras que \d+ también dejaría pasar 250. En cada caza de esta ruta escribes un validador que atrapa los valores buenos y deja libres los que casi lo son.
Sé realista sobre lo que puede saber una regex. Comprueba el formato, no el significado. Un patrón de fecha acepta tan tranquilo 31/02/2026 a menos que escribas ramas extra para cada mes, y un patrón de correo no puede saber si el buzón existe. Usa la regex como un primer filtro rápido y deja que el código de verdad revise el calendario, envíe un correo de confirmación o busque el registro.
Ejemplos
Atrapa
- 9:30 am
- 12:05PM
- 07:45 pm
Deja libre
- 13:00 pm
- 9:60 am
- 9:30
Una hora en formato de 12 horas: de 1 a 12 con un cero inicial opcional, y el modificador
iacepta tantopmcomoPM.Atrapa
- 05/11/2026
- 31/12/1999
- 31/02/2026
Deja libre
- 5/11/2026
- 12/13/2026
- 32/01/2026
El día y el mes se comprueban por rangos, pero
31/02/2026sigue pasando, porque el patrón conoce formas, no calendarios.Atrapa
- ABC-1234
- XYZ-0042
Deja libre
- AB-1234
- abc-1234
- ABC-12345
- ABC1234
Un código de producto: exactamente tres letras mayúsculas, un guion y cuatro dígitos, y las anclas rechazan cualquier cosa más larga.
Atrapa
- 0%
- 42%
- 100%
Deja libre
- 101%
- 07%
- 42
[1-9]?\dcubre del 0 al 99 sin cero inicial, y100tiene su propia rama.
Errores frecuentes
- Olvidar las anclas. Sin
^y$, un patrón de cuatro dígitos también da por buenos12345yabc2026, porque encuentra una coincidencia en algún punto de dentro. - Dejar el punto sin escapar. En un decimal o en un dominio,
.coincide con cualquier carácter, así que3x14se cuela en una comprobación de números; escribe\.cuando quieras un punto de verdad. - Querer cubrir todos los casos raros con un solo patrón. Una regex de email que siga el estándar completo ocupa cientos de caracteres; un patrón corto más un correo de confirmación se lee mejor y detecta más errores reales.
Lee las reglas: Patrones comunes en la Guía →Entrénalo: Validadores de formatos →
Lee más: Regex de email: patrones listos para copiar que funcionan de verdad →
Lee más: Regex para direcciones IPv4: de 0 a 255 como es debido →