你好,我有一个正则表达式工作,[2-5][0-5]:[0-8][0-8]
接受20:88,35:14,32:54等数字。
我使用anotattion javax.validation.constraints.Pattern
验证实体。
但我需要接受空字符串或我显示的格式。
我试过[^.]|[2-5][0-5]:[0-8][0-8]
[^.]|([2-5][0-5]:[0-8][0-8])
^.|[2-5][0-5]:[0-8][0-8]
(^.)|[2-5][0-5]:[0-8][0-8]
但不管用。我试过把empty|myformat
发布于 2013-12-20 19:18:11
试试这个:
^(?:[2-5][0-5]:[0-8][0-8])?$
(?:..)
是一个非捕获组,?
使组成为可选组。
^
和$
是字符串开始和结束的锚点。
但是,如果您的目标是匹配第一部分的20到55,第二部分的00和88之间的数字,那么这个模式会做得更好:
^(?:(?:[2-4][0-9]|5[0-5]):(?:[0-7][0-9]|8[0-8]))?$
https://stackoverflow.com/questions/20710502
复制相似问题