我已经尝试过了-[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天)等。
最好的方法是使用您最喜欢的日期库解析字符串,并适当地处理任何错误。