2

我正在使用正则表达式^(([0-9])|([0-1][0-9])|([2][0-3])):(([0-9])|([0-5][0-9]))$来获取时间。这是一个非常好的正则表达式,但是当用户只想输入没有冒号和分钟的 8 或 12 小时时,它是不允许的。任何人都可以建议哪些正则表达式只适合小时或小时:分钟。

4

2 回答 2

3
^(([0-9])|([0-1][0-9])|([2][0-3]))(:(([0-9])|([0-5][0-9])))?$

通过放入()并添加?量词使“:mm”部分成为可选的。

于 2012-06-27T12:19:30.860 回答
1

只需将最后一部分设为可选,如下所示:

 ^(([0-9])|([0-1][0-9])|([2][0-3]))(:(([0-9])|([0-5][0-9])))?$
于 2012-06-27T12:20:03.543 回答