javascript-用于验证mm/dd/yyyy格式的日期的正则表达式

javascript-用于验证mm/dd/yyyy格式的日期的正则表达式,javascript,regex,validation,date,date-conversion,Javascript,Regex,Validation,Date,Date Conversion,我不擅长正则表达式。我得到了验证dd/mm/yyyy格式的代码,该格式也验证闰年,我试图修改以使其适用于mm/dd/yyyy,但都失败了 是否有人可以将其更改为验证mm/dd/yyyy格式 正则表达式: ^(0[0[1-1-9[0[1-1-1-9[1-1-9[1[1[1-1-9[1-1-1-9[1-9[1-9[1-9[1-1-9[1-1-9[1-1-9[1-9[1-1-9[1-9[1[1-9[1[1-9[1[1-9[1[1-9[1-9[1[1-9[1-9[1[1-9[1-9[1-9[1-9[1-

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

是否有人可以将其更改为验证mm/dd/yyyy格式

正则表达式:

^(0[0[1-1-9[0[1-1-1-9[1-1-9[1[1[1-1-9[1-1-1-9[1-9[1-9[1-9[1-1-9[1-1-9[1-1-9[1-9[1-1-9[1-9[1[1-9[1[1-9[1[1-9[1[1-9[1-9[1[1-9[1-9[1[1-9[1-9[1-9[1-9[1-9[1-9[1-9[1-9[1-9[1-9[1-9[1-1-9[1-9[1-9[1-1-9[1[1-9[1-9[1-1-1-1-9[1[1-9[1-9[1-9[1[1-9[1-9[1-9[(0[48]|[2468][048]|[13579][26])|(16 |[2468][048]|[3579][26])00)$

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

正则表达式:

/^(0[0[13578[13578[0[13578[0[13578[0[13578[0[13578[0[13578[0[13578[0[13578[0[13578[0[13578[0[13578[0[13578[0[0[13578[0[0[13578[0[0[13578[0[0[13578[0[1[1[1[17[17[0[0[0[0[1[13578]]7]]]]7 7[1[1[1[1[1[1[1[1[1[0[0[1[1[1[0[0[1[1[1[2[1[2[1[1[1[0[0[1[1[1[1[1[0[0[0[1[0[0[0[0[1[1[0[1[0[1[1[1[0[0[1[1[0[0[1[0[0 9]|[2-9]\d)(0[48]|[2468][048]|[13579][26]|((16 |[2468][048]|[3579][26]))$/g

试一试

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);
}

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

最好尝试从输入字符串构造日期对象,如果该对象有效(非空),则该日期有效。因为像闰年和一个月的天数这样的问题很容易解决,在这里使用正则表达式是个坏主意。人们在最好的时候都无法正确计算闰年——试图在正则表达式中计算闰年是很可怕的。看看这个答案,给你一些其他的想法:你不应该问是否有人可以为你更改代码!您自己解析字符串并输入组件部分,请参阅,谢谢您的回答,但我需要验证闰年日期。它也没有这样做。?您检查过吗。?闰年不会以不同的格式出现,是吗?我想@Connor可能需要稍微更改一下。在JSFIDLE中: