正则表达式匹配0到1之间的十进制数

时间:2016-11-07 04:41:00

标签: jquery regex

我希望匹配0到1(含)之间的十进制数,但我写的正则表达式也匹配任何超过1的值:https://regex101.com/r/mN1iT5/3

我该如何解决?

^[0-1]{1}(\.[0-9]{1,2})?$

2 个答案:

答案 0 :(得分:1)

执行:

^(?:0*(?:\.\d+)?|1(\.0*)?)$
  • 0*(?:\.\d+)?匹配任意数量的0后跟一个或多个数字

  • 1(\.0*)?匹配1后跟一个小数点,以及任意数量的0 s

  • 以上两个是|(OR-ed)以匹配其中任何一个

Demo

答案 1 :(得分:-1)

  • 无效值:0.0、00.0、.0、1.、1.001
  • 有效值:00.010、.010、0.999、1、1.000
^(0*(\.(0*)[1-9][0-9]*)|1(\.0+)?)