我正在尝试构建一个正则表达式,用于检查日期是否为以下格式(11-2-07、1-25-2007 或 01/25/2007)。我的正则表达式如下所示:

/^([\d{2}\d{1}])([\-\/])([\d{2}\d{1}])(\-\/)([\d{2}\d{4}])$/

当我以所需格式在日期中输入日期时,方法 test() 实际上返回 false。你能帮我找出错误吗?

最佳答案

  • 您可以使用 \d{1,2} 选择 1 位或 2 位数字出现。
  • 最后一个连字符/正斜杠组中缺少方括号。
  • 最后一组应该是 (\d{2}|\d{4})
  • 无需转义字符类中的正斜杠。
    /^(\d{1,2})([\-/])(\d{1,2})([\-/])(\d{2}|\d{4})$/
    
  • 关于javascript - 使用正则表达式进行日期验证,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33837140/

    10-12 12:24
    查看更多