日志与接口中常见 “2026-09-13 09:30:00” 或 ISO 风格的 “2026-09-13T09:30”。下面这条规则同时支持空格与 T 分隔。
默认正则
/^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])[ T](?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d)?$/
匹配日期与时间组合,日期与时间之间用空格或 T 分隔,秒可省略。
日期时间由日期、分隔符与时间组成。ISO 8601 使用 T 分隔,而日常日志常用空格。
规则用 [ T] 同时接受空格与 T;时间部分为 24 小时制,小时 00-23、分钟 00-59,秒可省略。
该规则不含时区信息,也不校验日期是否真实存在。
2026-09-13 09:30:002026-09-13T23:592026-09-13 00:00:002026-09-132026-09-13 24:002026-09-13T09:60Q:支持带时区的 ISO 时间吗?
不支持。如需时区,可在末尾追加 (?:Z|[+-]\d{2}:?\d{2})?。
Q:为什么秒可以省略?
规则中秒部分 (?::[0-5]\d)? 是可选的,因此 HH:mm 与 HH:mm:ss 都能匹配。
Q:小时为什么不能是 24?
24 小时制小时范围为 00-23,24:00 属于超出范围。
Q:日志中如何批量提取时间?
去掉 ^ 与 $,在“提取”模式中即可把日志中的时间逐条列出。