我想使用正則表達式檢查日期格式:dd-mm-yyyy。 也必須檢查閏年的日期也..日期格式的正則表達式:dd-mm-yyyy
我使用RegularExpressionValidator檢查日期。
請幫助...
在此先感謝
我想使用正則表達式檢查日期格式:dd-mm-yyyy。 也必須檢查閏年的日期也..日期格式的正則表達式:dd-mm-yyyy
我使用RegularExpressionValidator檢查日期。
請幫助...
在此先感謝
試試這個規律expression-
^(((((0[1-9])|(1\d)|(2[0-8]))-((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|((29|30)-((0[1,3-9])|(1[0-2])))))-((20[0-9][0-9]))|(29-02-20(([02468][048])|([13579][26]))))$
從Here
可以的JavaScript檢查閏年for more info
isLeap = new Date(year, 1, 29).getMonth() == 1
正則表達式
^(?:^(?:(?:(?:(?:(?:0?[13578]|1[02])/31)|(?:(?:0?[13-9]|1[0-2])/(?:29|30)))/(?:1[6-9]|[2-9]\d)\d{2})|(?:0?2/29/(?:(?:(?:1[6-9]|[2-9]\d)(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))|(?:(?:0?[1-9])|(?:1[0-2]))/(?:0?[1-9]|1\d|2[0-8])/(?:(?:1[6-9]|[2-9]\d)\d{2}))$)$
這些允許但不要求在單位數月/天內的前導零。如果你不想這樣做,請替換0的所有實例?以0
明白了此正則表達式還處理閏年:
^(((0 [1-9] | [12] \ d | 3 [01])/(0 [13578] | 1 [02])/((19 | [2-9] \ d)\ d {2}))|((0 [1 -9] | [12] \ d | 30)/(0 [13456789] | 1 [012])/((19 | [2-9] \ d)\ d {2}))|((0 [1 -9] | 1 \ d | 2 [0-8])/ 02 /((19 | [2-9] \ d)\ d {2}))|(29/02 /((1 [6-9 ] | [2-9] \ d)(0 [48] | [2468] [048] | [13579] [26])|((16 | [2468] [048] | [3579] [26])0 0))))$
匹配
[29/02/2000],[30/04/2003],[01/01/2003]
非匹配
[29/02/2001],[30-04-2003],[1899年1月1日]
您還可以檢查此鏈接了:http://www.codeproject.com/KB/aspnet/LengthValidation.aspx
你可以使用一個CustomValidator並具有客戶端驗證是簡單,並在服務器端使用DateTime.TryParse來獲得一個確定的val idation。雖然我懷疑你不需要你的代碼一直工作到9999年(不,我不能立即看到提供的正則表達式是否在未來的工作中)。
試試這個。這個對我有用!
ValidationExpression="(^((((0[1-9])|([1-2][0-9])|(3[0-1]))|([1-9]))-(((0[1-9])|(1[0-2]))|([1-9]))-(([0-9]{2})|(((19)|([2]([0]{1})))([0-9]{2}))))$)"
只回答爲我工作,嘗試了其他人,沒有工作,ty! – Alex
從微軟DN但修飾年都20XX和19XX合作,作爲DOB
^(((((0[1-9])|(1\d)|(2[0-8]))/((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|((29|30)-((0[1,3-9])|(1[0-2])))))/((((20[0-9][0-9]))|(29-02-20(([02468][048])|([13579][26]))))|(((19[0-9][0-9]))|(29-02-19(([02468][048])|([13579][26]))))))$
感謝答案... 它可以100% –
不要忘記將其標記爲正確答案。它可以幫助別人...... –