-3

这个正则表达式有什么问题?它不会工作

var patt = /[0-9]{2}/[0-9]{2}/[1-9]{4}/;

if(patt.test(document.getElementById('date').value) == false){
    document.getElementById("errorTxt").innerHTML = "Error";
    return false;
}
4

4 回答 4

0

你需要/从中间逃脱。

var patt = /\d\d\/\d\d\/\d{4}/;

另外,您为什么不让 2012 年成为有效年份?

于 2012-06-22T16:02:31.777 回答
0

您需要/在模式中间逃脱。制作它们\/

于 2012-06-22T16:02:59.503 回答
0

要在正则表达式中使用斜线,它们必须被转义:

var patt = /[0-9]{2}\/[0-9]{2}\/[1-9]{4}/;

在相关说明中,您可以使用 \d 来表示任何数字:

var patt = /\d{2}\/\d{2}\/\d{4}/;
于 2012-06-22T16:03:41.807 回答
0

那么,当有in时,你怎么能匹配 year2012呢?[1-9]{4}0yyyy

使用正则表达式/\d{2}\/\d{2}\/\d{4}/,您可以将日期拆分为数字,但是...

您应该改用JavaScript 日期验证

于 2012-06-22T16:04:43.027 回答