You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写Regex校验支持任意位数分钟数的MM:SS时间格式

MM:SS格式(分钟可超60)正则校验方案

你当前使用的正则存在分钟位长度限制问题:

^[0-1]?[0-9]:[0-5][0-9]$

该写法将冒号左侧的分钟值限制为最多2位、且首位只能是0或1,因此无法匹配123:59这类分钟数超过两位、或分钟值≥20的场景。

最简高效正则写法

要支持冒号左侧为任意位数数字,同时保证秒位始终在00-59的合法区间,直接使用以下正则即可:

^\d+:[0-5]\d$

规则说明

  • ^:锚定字符串开头,避免开头出现多余字符
  • \d+:匹配1个及以上数字,支持任意长度的分钟值(可匹配0:00/59:59/123:59/10000:59等所有合法分钟长度的格式)
  • ::匹配固定冒号分隔符
  • [0-5]\d:校验秒位,第一位取值范围0-5、第二位为0-9,保证秒数落在00-59的合法区间
  • $:锚定字符串结尾,避免结尾出现多余字符

可选优化(禁止分钟前导零)

如果业务规则不允许分钟位出现无意义前导零(比如禁止匹配012:34这类格式),可以将分钟匹配规则调整为非前导零写法,对应正则:

^(0|[1-9]\d*):[0-5]\d$

该写法仅允许分钟值为单独的0,或是非零开头的任意长度数字,过滤掉前导零的非法格式。

内容的提问来源于stack exchange,提问作者AdamJones

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 21:27:20