请问一个正则,匹配小时:分钟这个格式,例如:08:40

发布于 2022-09-11 20:30:53 字数 107 浏览 20 评论 0

如题。我自己写的

/^[0-23]{2}:[0-59]{2}$/

能匹配到 01:40 02:40 03:40 但是匹配不到 04:40,我就奇怪了,请高手解惑,谢谢。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

甜`诱少女 2022-09-18 20:30:53

嘿嘿,我已经搞定了,正确的正则如下:

^([0-1]{1}\d|2[0-3]):([0-5]\d)$
蓝戈者 2022-09-18 20:30:53
^(?:[01][0-9]|2[0-3]):(?:0[0-9]|[1-5][0-9])$

^(?:[01]\d|2[0-3]):[0-5]\d$

点击查看

最丧也最甜 2022-09-18 20:30:53

[0-23]并不是你认为的那种匹配(0-23的数字) 正则中能使用-来表示区间的范围只有[0-9]

用这个正则试试 /^(20|21|22|23|[0-1]\d):[0-5]\d$/

优雅的叶子 2022-09-18 20:30:53

正则是按字符匹配的而不是按数值。表达式[0-23]匹配的是一个0-2之间的字符或者一个字符3, 与[0-3]效果是一样的。[0-23]{2}只能匹配以下字符串

00010203101112122021222330313233

[0-59]同理。
正确的写法应该是/^(?:[01][0-9]|2[0-3]):[0-5][0-9]$/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文