最佳日期正则表达式mm / dd / yyyy

时间:2013-03-28 11:00:27

标签: asp.net regex date date-format

请帮我找到dateformat mm/dd/yyym/d/yyyy的最佳正则表达式。

我尝试了不同的链接,但每个人都有一些问题。所以请帮我解决这个问题。

What is the MM/DD/YYYY regular expression and how do I use it in php?

http://regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5

http://www.regular-expressions.info/regexbuddy/datemmddyyyy.html

2 个答案:

答案 0 :(得分:3)

使用其中一个DateTime.TryParse重载(或DateTime.TryParseExact,如果您想要更多控制权)来验证字符串是否是DateTime的有效表示。

DateTime dt;
if(DateTime.TryParse(someInputString, out dt)
{
  // it is valid and dt can be used
}

这是一种比正则表达式更好的方法 - 它更快,经过良好测试,并且会生成有效的DateTime对象。

答案 1 :(得分:1)

如果你需要一个正则表达式,那么这样的东西就可以了(大多数情况下,因为它允许2月31日)。

(0?\d|1[012])\/([012]?\d|3[01])\/\d{4}

通常使用DateTime解析来验证日期格式要好得多。像DateTime.TryParseExact方法一样。您可以在浏览器中使用正则表达式(在JavaScript中),但您应该在服务器端使用DateTime解析。