[英]@Pattern regex allowing only : numbers & empty String & numbers beginning by 0
我在实体的String字段上使用@Pattern批注,正则表达式仅允许数字或空字符串,但是我也需要允许数字以0开头。
这是我现在使用的模式:
//..
@Pattern(message="Entrez un nombre" , regexp = "[+-]?(([1-9][0-9]*)|(0))([.,][0-9]+)?|(^$)")
private String BSCId;
//...
谢谢。
尝试这个:
^(?:[+-]?(\d+)([,.]\d+)?)?$
这允许数字以0开头,还可以通过使整个字符串为可选来使字符串为空。
[+-]?(\\d+)
匹配可选的+
或-
,然后将1匹配到无穷大数字 ([,.]\\d+)?
匹配,
或.
然后是一位到无穷位数。 将整个分数设为可选,以便整数也可以匹配。 (?:...)?
使所有内容都可选(这样,空字符串将根据要求进行匹配),而无需创建捕获组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.