相关疑难解决方法(0)

正则表达式匹配有效日期

我正在尝试编写一个验证日期的正则表达式.正则表达式需要匹配以下内容

  • M/d/YYYY
  • MM/DD/YYYY
  • 单个数字月份可以从前导零开始(例如:03/12/2008)
  • 单位数天可以从前导零开始(例如:2008年3月2日)
  • 不能包括2月30日或2月31日(例如:2008年2月31日)

到目前为止我有

^(([1-9]|1[012])[-/.]([1-9]|[12][0-9]|3[01])[-/.](19|20)\d\d)|((1[012]|0[1-9])(3[01]|2\d|1\d|0[1-9])(19|20)\d\d)|((1[012]|0[1-9])[-/.](3[01]|2\d|1\d|0[1-9])[-/.](19|20)\d\d)$
Run Code Online (Sandbox Code Playgroud)

这恰当匹配除了它还包括2/30/2008和2/31/2008.

有人有更好的建议吗?

编辑:我在RegExLib上找到了答案

^((((0[13578])|([13578])|(1[02]))[\/](([1-9])|([0-2][0-9])|(3[01])))|(((0[469])|([469])|(11))[\/](([1-9])|([0-2][0-9])|(30)))|((2|02)[\/](([1-9])|([0-2][0-9]))))[\/]\d{4}$|^\d{4}$
Run Code Online (Sandbox Code Playgroud)

它匹配遵循MM/DD/YYYY格式的所有有效月份.

谢谢大家的帮助.

regex date

63
推荐指数
5
解决办法
17万
查看次数

C#Regular Expression来验证日期?

我正在尝试验证输入到文本框中的日期.文本框上有一个输入掩码,强制输入xx/xx/xxxx.我正在尝试使用正则表达式验证程序来强制输入正确的日期.我根本不熟悉RegEx.我的同事在互联网上找到了这个,但我无法真正说出它在做什么.

这看起来不错吗?似乎过于复杂......

(^((((0[1-9])|([1-2][0-9])|(3[0-1]))|([1-9]))\x2F(((0[1-9])|(1[0-2]))|([1-9]))\x2F(([0-9]{2})|(((19)|([2]([0]{1})))([0-9]{2}))))$)
Run Code Online (Sandbox Code Playgroud)

有没有人知道一个不太复杂的表达,基本上做我需要的东西?

c# regex validation date

14
推荐指数
3
解决办法
7万
查看次数

标签 统计

date ×2

regex ×2

c# ×1

validation ×1