^((\d(([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(([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 (非閏年)
等其他非法日期 .......
正規表示式 日期 驗證
日期的格式是yyyy mm dd 1 6 9 2 9 d d 0?13578 1 02 0?1 9 12 d 3 01 1 6 9 2 9 d d 0?13456789 1 012 0?1 9 12 d 30 1 6 9 2 9 d d 0?2 0?1 9 1 d 2 0 8 1 6 9 2 9 d...
正規表示式驗證日期
進入正題之前,我們需要澄清兩個概念 一,什麼是合法的日期範圍?對於不同的應用場景,這個問題有不同的解釋。這裡採納msdn中的約定 datetime值型別表示值範圍在公元 紀元 0001 年 1 月 1 日午夜 12 00 00 到公元 c.e.9999 年 12 月 31 日晚上 11 59 59 ...
驗證日期正規表示式
一 簡單的日期判斷 yyyy mm dd d d 1 d 二 演化的日期判斷 yyyy mm dd yy mm dd d d d 3 d d年 d月 d日 三 加入閏年的判斷的 例項 1 6 9 2 9 d d 0?13578 1 02 0?1 9 12 d 3 01 1 6 9 2 9 d d 0...