我正在尝试制作一个日期regexp验证器,该验证器以下列格式验证日期:
必须有效:
2015年1月24日、2000年1月1日、2000年1月1日、2000年1月1日、
必须无效:
1599、12/1599、31/12/1599、
我做了这个,但它不适用于dd/mm/yyyy和mm/yyyy
^(1[6-9][0-9]{2}|2[0-9]{3})(?:[-\/](0[1-9]|1[0-2]))?(?:[-\/](0[1-9]|1[0-2])[-\/](0[1-9]|[1-2][0-9]|3[0-1]))?$

知道怎么解决这个问题吗?thx
发布于 2016-03-21 13:22:22
请注意,您将无法轻松地用正则表达式表示最复杂的日期检查,例如:
尽管如此,下面的正则表达式应该符合您的规范:
(?:(?:(0[1-9]|[1-2]\d|3[0-1])/)?(0[1-9]|1[0-2])/)?(1[6-9]\d{2}|[2-9]\d{3})第一组与日部分对应,第二组对应月份,第三组对应年份。
https://stackoverflow.com/questions/36131954
复制相似问题