【问题标题】:Regular Expression for date format validation [duplicate]日期格式验证的正则表达式 [重复]
【发布时间】:2013-12-15 05:58:41
【问题描述】:

日期格式 (mm-dd-yyyy) 的正则表达式是什么并验证它们?

【问题讨论】:

    标签: javascript jquery regex


    【解决方案1】:

    在这里

    ((0[1-9])|(1[0-2]))-(([0-2]\d)|([3][01]))-(\d{4})
    

    解释:

    1. 由于mm 可以是从0112 的任何东西,所以01-09 就足够了,正则表达式将是0[1-9]mm 也可以是10-12 所以1[0-2]

      因此匹配mm 的正则表达式将是(0\d)|(1[0-2])

    2. 因为dd 可以是从0131 的任何东西,所以01-29 正则表达式将是[0-2]\d,或者它也可以是30-31 所以[3][01]

      因此匹配dd 的正则表达式将是(([0-2]\d)|([3][01]))

    3. 由于yyyy 可以是任意数量的 4 位数字,即 2010、1999、2050 等(只要您不考虑任何特定范围),因此正则表达式将只是 4 位数字,即 \d{4}

      因此匹配yyyy的正则表达式将是(\d{4})

    所以在组合这些之后,日期的完整正则表达式将是:

    ((0[1-9])|(1[0-2]))-(([0-2]\d)|([3][01]))-(\d{4})
    

    【讨论】:

    • 谢谢朋友们,这对我来说非常有用
    • 顶部的“Here it is”正则表达式与底部的表达式不匹配:您的一天应该是[0-2]\d
    • @Mr.Polywhirl 实际上我后来编辑了这个问题并忘记更新它。现在更新了。谢谢
    猜你喜欢
    • 2014-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多