更好的正则表达式来验证日期时间

Joh*_*ohn 1 regex

我有这个正则表达式(\d{4})-(\d{2})-(\d{2})来检测一个有效的日期,但是,它并不完美,因为一些传入的数据是2009-24-09(YYYY-DD-MM),有些是2009-09-24(YYYY-MM-DD) .

是否可以使用单行正则表达式来检测第二和第三部分是否大于12以更好地验证日期?

Byr*_*ock 7

如果您不知道格式,您将得到模棱两可的结果.

采取2010-01-04的是1月4日或3月1日?

您无法使用正则表达式进行验证.

正如Albert所说,尝试解析日期,并确保用户知道要使用哪种格式.您可能会尝试将月份和年份分成不同的字段或组合框.