java - validar - Validación de fecha Regex para aaaa-mm-dd
expresión regular fecha dd/mm/yyyy javascript (4)
Esta pregunta ya tiene una respuesta aquí:
- Validación del formato de fecha Regex en Java 11 respuestas
¿Cuál es la expresión regular para el formato de fecha aaaa-mm-dd?
Quiero validar el correo electrónico de edittext y verificar si coincide con la expresión regular.
Puede usar esta expresión regular para obtener el formato aaaa-MM-dd: ((?: 19 | 20) / d / d) - (0? [1-9] | 1 [012]) - ([12] [0 -9] | 3 [01] | 0? [1-9])
Puede encontrar un ejemplo para la validación de la fecha: cómo validar la fecha con expresiones regulares.
Puedes probar esta expresión:
^/d{4}[/-///s]?((((0[13578])|(1[02]))[/-///s]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[/-///s]?(([0-2][0-9])|(30)))|(02[/-///s]?[0-2][0-9]))$
Descripción:
valida una fecha aaaa-mm-dd, aaaa mm dd o aaaa / mm / dd
se asegura de que el día esté dentro del rango válido para el mes; NO se valida el 29 de febrero en un año bisiesto, solo que el mes de febrero puede tener 29 días
Partidos (probados): 0001-12-31 | 9999 09 30 | 2002/03/03
Una simple sería
/d{4}-/d{2}-/d{2}
pero esto no restringe mes a 1-12 y días de 1 a 31.
Hay controles más complejos como en las otras respuestas, por cierto bastante inteligentes. Sin embargo, debe verificar una fecha válida, ya que no hay cheques si un mes tiene 28, 30 o 31 días.
Esto coincidirá con yyyy-mm-dd
y también yyyy-md
:
^/d{4}/-(0?[1-9]|1[012])/-(0?[1-9]|[12][0-9]|3[01])$
Si está buscando una coincidencia exacta para yyyy-mm-dd
, intente esto
^/d{4}/-(0[1-9]|1[012])/-(0[1-9]|[12][0-9]|3[01])$
o use este si necesita encontrar una fecha dentro de una cadena como The date is 2017-11-30
/d{4}/-(0?[1-9]|1[012])/-(0?[1-9]|[12][0-9]|3[01])*