验证日期时间的正则表达式

来源:互联网 发布:统计工作用什么软件 编辑:程序博客网 时间:2024/06/06 20:38
^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[0-9])|(1[0-9])|(2[0-3]))\:(([0-5][0-9])|([0-9]))(((\s)|(\:(([0-5][0-9])|([0-9]))))?)))?$
 
 
可以通过下面这些个例子:
2004-2-29
1900-2-29 (非闰年小BUG,但不重要了,因实际上很少遇到)
2006-12-1
2006-1-31
2006-01-02
2006-12-05
2006-9-16 5:6:5
2006-9-16 23:59:59
2006-9-16 12:1:0
2006-9-16 0:0:0
2006-9-16 05:06:05
2006-9-16 15:15:15
2006-9-16 15:5:15
2006-9-16 0:0
不通过的:
2003-2-29 (非闰年)
等其他非法日期 .......
原创粉丝点击