1

请帮我找到日期格式的最佳正则表达式mm/dd/yyym/d/yyyy.

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

什么是 MM/DD/YYYY 正则表达式以及如何在 php 中使用它?

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

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

4

2 回答 2

3

使用其中一个DateTime.TryParse重载(或者DateTime.TryParseExact如果您想要更多控制)来验证字符串是否是DateTime.

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

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

于 2013-03-28T11:04:54.723 回答
1

如果你需要一个正则表达式,那么这样的东西会起作用(对于大多数情况,因为它允许 2 月 31 日)。

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

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

于 2013-03-28T11:05:39.660 回答