大家,早安。
我一直在寻找一些正则表达式来验证日期和时间格式,dd/mm/yyyy hh:mm或dd-mm-yyyy hh:mm或类似的,但我发现的那些不完整或仅部分满足条件或其他日期格式。
我把我做测试的基地留给你。目前仅对以下日期有效:
(https://regex101.com/r/yVN3p2/1)
^([0][1-9]|[12][0-9]|3[01])(\/|-)([0][1-9]|[1][0-2])\2(\d{4})(\s)([0-1][1-9]|[2][0-3])(:)([0-5][0-9])$
以问题中的正则表达式为基础,我们可以创建以下验证:
日期:dd/mm/yyyy或dd-mm-yyyy
https://regex101.com/r/yVN3p2/7
日期、小时和分钟:dd/mm/yyyy hh:mm或dd-mm-yyyy hh:mm
https://regex101.com/r/yVN3p2/9
日期、小时、分钟、秒:dd/mm/yyyy hh:mm:ss或dd-mm-yyyy hh:mm:ss
https://regex101.com/r/yVN3p2/10
使用 PHP 进行验证的示例如下
我制作了 2 个验证日期的正则表达式,它们得到了改进,下面我留下了更多文档。
日期验证格式为:YYYY-MM-DD,此正则表达式不允许出现错误的日期,例如不是或将成为 Leap 的年份中的 2 月 30 日和 31 日或 2 月 29 日:
日期验证格式:YYYY-MM-DDTHH:MM:SS,此正则表达式不允许出现错误的日期,例如不是或将是闰年的 2 月 30 日和 31 日或 2 月 29 日,小时格式为 24 小时:
这两个正则表达式是以下正则表达式的组合:
24小时无秒时间格式验证:
用秒验证时间格式 24 小时:
验证时间格式 12 小时无秒:
验证时间格式 12 小时和秒: