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



我已经尝试过了-[0-9]{4})-([0-9]}2})([0-9]{2}。。。。它给我错误

您有一个不平衡的paranthesign,否则这个正则表达式可以正常工作。

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

我建议使用一个工具来验证你的regex,比如这个:regex101.com

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

使用正则表达式验证日期和时间永远不会有好结果。边缘情况太多:例如闰年、闰秒(例如2015-06-30 23:59:60)、英格兰1752年9月(没有3-13天)等。

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

最新更新