【问题标题】:Date Regular Expression Validator日期正则表达式验证器
【发布时间】:2011-05-16 02:50:36
【问题描述】:

我在文本框上有一个正则表达式验证器,用于验证输入的文本是否为有效日期。

见下面的正则表达式:

ValidationExpression="^[0-9]{1,2}/[0-9]{1,2}/[0-9]{4}$"

现在我想在文本框中允许以下内容:mm/dd/yyyy 如何更新我的正则表达式,以便在输入 mm/dd/yyyy 时不会引发验证错误?

提前致谢。

【问题讨论】:

  • 如果你真的想捕捉一个有效的日期,你应该确保月份不大于 12 天不大于 31 或者你的天不为零 ...
  • 我完全同意。我目前正在做这个验证服务器端:(

标签: asp.net regex validation date


【解决方案1】:

这是将日期限制为更有意义的格式的更准确方法

^[1-12]{1,2}/[1-31]{1,2}/[2000-2050,1900-1999]{4}$

这仍然不完美,因为这将允许 - 例如 - 日期为 2013 年 2 月 31 日。 刚刚意识到这是安静的越野车。

【讨论】:

    【解决方案2】:
    ValidationExpression="^[0-9m]{1,2}/[0-9d]{1,2}/[0-9y]{4}$"
    

    基本上允许第一个字段为0-9或m,第二个字段为0-9或d,第三个字段为0-9或y(在正则表达式[]括号中包含可能的选项列表,-放在括号内时表示值的范围)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-22
      • 1970-01-01
      • 1970-01-01
      • 2014-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多