正则表达式在php中验证日期

时间:2011-07-13 05:59:30

标签: php regex datetime

任何人都可以帮我使用正则表达式从字符串中找到日期时间,格式如

September 29th, 2010, 05:18 UTC

2 个答案:

答案 0 :(得分:3)

取决于您想要验证的严格程度。

^\w+\s+\w+,\s+\d+,\s+\d+:\d+\s+[\w:+-]*$

会起作用,但不会检查日期是否实际有效。在正则表达式中,日期验证是众所周知的,所以我建议不要这样做。最好尝试解析日期,看看是否会抛出异常。

答案 1 :(得分:3)

有很多可能的REGEX,因为有人写它们。假设格式相对严格,这个应该可行。

^([\w]+) ([^,]+), ([^,]+), ([^ ]+) (.*)$

如果您正在使用PHP,我宁愿只使用strtotime()并从那里开始工作,那么保证您将从中获得有用的答案会更安全。请记住配置您的默认时区。