如题。我自己写的
/^[0-23]{2}:[0-59]{2}$/
能匹配到 01:40 02:40 03:40 但是匹配不到 04:40,我就奇怪了,请高手解惑,谢谢。
如题。我自己写的
/^[0-23]{2}:[0-59]{2}$/
能匹配到 01:40 02:40 03:40 但是匹配不到 04:40,我就奇怪了,请高手解惑,谢谢。
[0-23]并不是你认为的那种匹配(0-23的数字) 正则中能使用-来表示区间的范围只有[0-9]
用这个正则试试 /^(20|21|22|23|[0-1]\d):[0-5]\d$/
正则是按字符匹配的而不是按数值。表达式[0-23]
匹配的是一个0-2之间的字符或者一个字符3, 与[0-3]
效果是一样的。[0-23]{2}
只能匹配以下字符串
00
,01
,02
,03
,10
,11
,12
,12
,20
,21
,22
,23
,30
,31
,32
,33
[0-59]
同理。
正确的写法应该是/^(?:[01][0-9]|2[0-3]):[0-5][0-9]$/
10 回答11.3k 阅读
7 回答5.4k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
4 回答4.1k 阅读
2 回答5.9k 阅读✓ 已解决
嘿嘿,我已经搞定了,正确的正则如下: