我希望匹配0到1(含)之间的十进制数,但我写的正则表达式也匹配任何超过1的值:https://regex101.com/r/mN1iT5/3
我该如何解决?
^[0-1]{1}(\.[0-9]{1,2})?$
答案 0 :(得分:1)
执行:
^(?:0*(?:\.\d+)?|1(\.0*)?)$
0*(?:\.\d+)?
匹配任意数量的0
后跟一个或多个数字
1(\.0*)?
匹配1
后跟一个小数点,以及任意数量的0
s
以上两个是|
(OR-ed)以匹配其中任何一个
答案 1 :(得分:-1)
^(0*(\.(0*)[1-9][0-9]*)|1(\.0+)?)