Para validar fechas en un textbox a traves de expresiones regulares podemos hacer uso de las siguientes simples expresiones:
Formato (MM/dd/yyyy):
([1-9]|1[012])[- /.]([1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d
Formato (dd/MM/yyyy):
(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d
Por supuesto estas validaciones son muy básicas, y no contempla la cantidad de días del mes así como tampoco el manejo de años bisiestos, por ello, para validaciones mas estrictas podemos usar las siguientes expresiones regulares bastante mas complejas:
Formato (MM/dd/yyyy):
^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(?:(?:0?[1-9]|1[0-2])(\/|-)(?:0?[1-9]|1\d|2[0-8]))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(0?2(\/|-)29)(\/|-)(?:(?:0[48]00|[13579][26]00|[2468][048]00)|(?:\d\d)?(?:0[48]|[2468][048]|[13579][26]))$
Formato (dd/MM/yyyy):
^(?:(?:0?[1-9]|1\d|2[0-8])(\/|-)(?:0?[1-9]|1[0-2]))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(?:(?:31(\/|-)(?:0?[13578]|1[02]))|(?:(?:29|30)(\/|-)(?:0?[1,3-9]|1[0-2])))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(29(\/|-)0?2)(\/|-)(?:(?:0[48]00|[13579][26]00|[2468][048]00)|(?:\d\d)?(?:0[48]|[2468][048]|[13579][26]))$
Considerar en caso de usar javascript para la validación el costo computacional en el cliente de una expresión y otra.
Este comentario ha sido eliminado por el autor.
ResponderEliminarFormato dd/mm/yyyy
ResponderEliminar^(0?[1-9]|[12][0-9]|3[01])[\/](0?[1-9]|1[012])[\/](19|20)\d{2}$
faltaba validar el año 4 digitos
Formato Rut Chileno
ResponderEliminar^\d{1,2}(\.|)\d{3}(\.|)\d{3}[(-|)][0-9kK]{1}$
Gracias por el aporte, fue de gran ayuda para validar las fechas :) :)
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminarExcelente, ayuda sigan asi muchachos
ResponderEliminarGracias ;)
ResponderEliminarGracias por el aporte!!
ResponderEliminarMuy bueno el aporte gracias!!
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminarComo debería ser una expresión regular que permita hasta 10 caracteres alfanuméricos en minúscula de la "a" a la "z" y números del "0" al "9", por ejemplo: "alfa2" ó "45flores"?
ResponderEliminarMuchas gracias
Aporte de Bill Wilkinson....
Eliminar^[a-z][a-z0-9]{0,9}$
Como podria validar una fecha, teniendo en cuenta que tengo fecha inicial y fecha final y la fecha final no puedes ser inferior a la fecha inicial?
ResponderEliminargracias
ResponderEliminarHola me podrias ayudar?
ResponderEliminarHola, necesito ayuda con una validación que necesito hacer para una practica.
Lo que necesito validar es un textbox con expresiones regulares:
- Que reciba 3 palabras(en el mismo textbox)
- Que cada palabra inicie con mayúscula
- Cada palabra separada por 1 espacio
Como lo podría hacer?
Gracias!
y como seria para yyyy/mnm/dd
ResponderEliminary como seria para yyyy/mnm/dd
ResponderEliminarHola, (19|20)\d{2}[-/.](0[1-9]|1[012])[-/.](0[1-9]|[12][0-9]|3[01]) ahí tienes yyyy/mm/dd
ResponderEliminarSi tengo una fecha como input en formato dd/mm/yyyy, y quiero generar una expresion regular que me calcule todas las fechas que engloban desde esa fecha hasta el dia 11/12/2006,por ejemplo, como seria? siendo el input mayor al dia 11/12/2006.
ResponderEliminarNecesito validar los numeros de telefonos en mi caso (505)-(84851491), el numero de cedula de mi pais 001-280174-0011U, los correos electronico que ingresen, me pueden ayudar
ResponderEliminar[RegularExpression("^(0?[1-9]|[12][0-9]|3[01])[\/](0?[1-9]|1[012])[\/](19|20)\d{2}$", ErrorMessage = "EL CAMPO FECHA DEBE CONTENER EL SIGUIENTE FORMATO dd/mm/a")]
ResponderEliminarcuando coloco la siguiente expresión me arroja error en la barra invertida " \ "
como podría solucionarlo?