3

我不擅长正则表达式。我得到了验证 dd/mm/yyyy 格式的代码,它也验证了闰年,我尝试修改以使其适用于 mm/dd/yyyy,但它们都失败了。

有人可以更改它以验证 mm/dd/yyyy 格式吗?

正则表达式:

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

回答 大家好,感谢大家的帮助,终于再次解析正则表达式,我得到了验证mm/dd/yyyy格式的答案

正则表达式:

/^(((0[13578]|1[02])/(0[1-9]|[12]\d|3[01])/((19|[2-9]\d)\d {2}))|((0[13456789]|1[012])/(0[1-9]|[12]\d|30)/((19|[2-9]\d)\d {2}))|(02/(0[1-9]|1\d|2[0-8])/((19|[2-9]\d)\d{2}))|( 02/29/((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][ 048]|[3579][26])00))))$/g

4

1 回答 1

5

尝试

function validateDate(testdate) {
    var date_regex = /^(0[1-9]|1[0-2])\/(0[1-9]|1\d|2\d|3[01])\/(19|20)\d{2}$/ ;
    return date_regex.test(testdate);
}

但最好使用Date object日期字符串中的正则表达式,然后对其进行验证。

于 2013-07-06T12:37:59.770 回答