我正在检查格式的日期["月"] [" /或 - "] ["日期"] [" /或 - "] [年]
var regex = /^(0[1-9]|1[012])[-/.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d$/;
if(dateValue.match(regex))
return true;
else
return false;
上面的代码总是返回false。如果我输入" 09/08 / 2017",它仍会返回false
答案 0 :(得分:1)
试试这个
var regex = /^((0?[1-9]|1[012])[- /.](0?[1-9]|[12][0-9]|3[01])[- /.](19|20)?[0-9]{2})*$/;
答案 1 :(得分:0)
试试这个
var regex = /^((0?[1-9]|1[012])[- /.](0?[1-9]|[12][0-9]|3[01])[- /.](19|20)?[0-9]{2})*$/ ;
demo here
答案 2 :(得分:0)
你必须逃避你的正则表达式中的斜杠'/'。尝试:
/^(0[1-9]|1[012])[-\/.](0[1-9]|[12][0-9]|3[01])[-\/.](19|20)\d\d$/
答案 3 :(得分:0)
试试这个:
var regex = /(0[1-9]|1[0-2])(-|\/)(0[1-9]|[12]\d|3[01])(-|\/)([12]\d{3})/;
console.log(regex.test('08/21/2017'));
console.log(regex.test('11-10-2008'));
console.log(regex.test('02.15.2008'));
console.log(regex.test('13/19/2008'));
可以找到here的解释。