正则表达式,其中数字不应以0开头

时间:2017-06-14 18:42:44

标签: java regex

我需要一个正则表达式,其中数字不能以0开头。正则表达式不允许在排序中使用“.0”。
示例:1.0, 1.0.1, 1.1.0

但是,允许这个顺序 示例:1, 1.10, 1.10.1

我试过的正则表达式是([1-9]|([1-9]+)+(\.[1-9]+))$

并且输出是它失败直到2"。"之后失败,因为它会失败直到1.0.0。但是它匹配1.0.0.2

1 个答案:

答案 0 :(得分:2)

我对答案的看法是

([1-9][0-9]*)(\.([1-9][0-9]*))*

它将与海报描述的选择完全匹配,一系列整数由句点分隔,每个整数不以0开头。

如果应用程序要求选择位于行的开头,我建议添加一个克拉(^)作为正则表达式中的第一个字符。