我有一个正则表达式来验证日期,它工作正常,就是这样
^(0[1-9]|[1-9]|1[012])[- /.](0[1-9]|[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d$
但我想使用 JavaScript 来验证它。我尝试过这个
var ck_effectivedate= /^(0[1-9]|[1-9]|1[012])[- /.](0[1-9]|[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d$/;
function radtxtbxNewEffectiveDateOnBlur(sender, eventArgs) {
if (!ck_effectivedate.test(sender.get_value())) {
alert('matches');
}
else
{
alert('does not match');
}
}
但是,正则表达式不起作用,因为我的正则表达式中存在 /
字符,该字符也用于在 java 脚本中封装正则表达式。
如果我删除 /
字符,那么它就可以工作,但我想在我的字符串中使用它。
请帮忙。
最佳答案
您只需使用反斜杠转义特殊字符 \
:
^(0[1-9]|[1-9]|1[012])[- \/.](0[1-9]|[1-9]|[12][0-9]|3[01])[- \/.](19|20)\d\d$
引用文献:
关于javascript - 如何在java脚本中使用正则表达式验证文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343517/