gpt4 book ai didi

java - @Pattern 正则表达式仅允许 : numbers & empty String & numbers beginning by 0

转载 作者:行者123 更新时间:2023-12-02 03:27:10 27 4
gpt4 key购买 nike

我在实体中的字符串字段上使用 @Pattern 注释,正则表达式仅允许数字或空字符串,但我也需要允许以 0 开头的数字。

这是我现在使用的模式:

//..
@Pattern(message="Entrez un nombre" , regexp = "[+-]?(([1-9][0-9]*)|(0))([.,][0-9]+)?|(^$)")
private String BSCId;
//...

谢谢。

最佳答案

试试这个:

^(?:[+-]?(\d+)([,.]\d+)?)?$

这允许数字以 0 开头,并且还允许通过将整个字符串设为可选来使字符串为空。

  • [+-]?(\d+) 匹配可选的 +-,然后匹配 1 到无穷大数字
  • ([,.]\d+)? 匹配 .,然后从 1 到无穷大数字。将整个分数设为可选,以便整数也可以匹配。
  • (?:...)? 将所有内容设为可选(以便空字符串根据要求匹配),而不创建捕获组。

关于java - @Pattern 正则表达式仅允许 : numbers & empty String & numbers beginning by 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38686831/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com