【问题标题】:Regular expression for validating month验证月份的正则表达式
【发布时间】:2011-02-22 02:37:39
【问题描述】:

用前导零验证月份的正则表达式是什么?

通过正则表达式:

01,02,03,04,05,06,07,08,09,10,11,12

正则表达式失败:

1, 00, 13 and up.

【问题讨论】:

    标签: javascript regex validation


    【解决方案1】:
    /^(0[1-9]|1[0-2])$/
    

    【讨论】:

    • 去掉括号可以提高这个表达式的性能。
    【解决方案2】:
    /^01|02|03|04|05|06|07|08|09|10|11|12$/
    

    【讨论】:

    • Seb's answer表达更简洁
    • 不是一个很性感的解决方案... =(
    • 可能不是更简洁,但比/^(0[1-9]|1[0-2])$/更快,甚至/^0[1-9] |1[0-2]$/,与 grep 一起使用时针对我生成的 1,000,000 个测试数据。
    【解决方案3】:

    我认为这是一个更好的,它接受'05',但也接受'5'作为一个月:

    /(^0?[1-9]$)|(^1[0-2]$)/
    

    【讨论】:

      【解决方案4】:

      这会起作用

      /(0[1-9])|(1[012])/
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-09-18
        • 2018-06-22
        • 2017-08-22
        • 1970-01-01
        • 1970-01-01
        • 2023-03-25
        相关资源
        最近更新 更多