日期DD-MM-YYYY的正则表达式

时间:2012-06-07 04:34:48

标签: html regex html5

我有以下表达式,它将用作HTML5“pattern”属性中的日期验证。

?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))-(?:(?:0[1-9]|1[0-2])-(?:19|20)[0-9]{2}

我希望它只允许有效日期,使用“ - ”作为分隔符。 这意味着如果是闰年,2月份最多可达29日,其他月份则为30/31。

目前,它只允许从2(2012)开始,到12(12月)开始。 但无论哪个月,它都将当天限制在29天。

有人可以帮我解决吗?

2 个答案:

答案 0 :(得分:3)

^(((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])00))))$

答案 1 :(得分:0)

我被链接到另一个用于验证使用正则表达式的优秀资源。 This链接为许多不同的日期格式提供“终极”日期验证程序,并允许所有分隔符。

相关问题