什么是“2012-01-29 03:42:22”的正则表达式?

时间:2016-07-25 09:21:50

标签: regex

我试过这个 - [0-9] {4}) - ([0-9] {2}) - ([0-9] {2})([0-9] {2}): ([0-9] {2}):( [0-9] {2})....它给了我错误

2 个答案:

答案 0 :(得分:1)

你有一个不平衡的paranthesis,否则这个正则表达式正常。

更正的解决方案是:([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})

我建议使用工具验证您的正则表达式,例如:regex101.com

您可能还想检查正则表达式修饰符或您正在使用的语言的一般怪癖。

答案 1 :(得分:0)

使用正则表达式验证日期和时间永远不会结束。边缘情况太多:例如闰年,闰秒(例如2015-06-30 23:59:60),像英格兰1752年9月的奇怪事件(3-13号范围内没有天数)等。

最好的办法是使用您最喜欢的日期库解析字符串并适当处理任何错误。