正整数或负十进制数的正则表达式,范围为0到10

时间:2020-06-16 08:37:58

标签: javascript python regex

最大精度为2的十进制数的正则表达式是什么,十进制数应在0到10的范围内(正数或负数)?

有效示例:

10.0
-9.5
-10
5
1.5
-0.5
0.5
8.25

无效的示例:

12.1232
2.23332
e666.76
11
-11

我尝试过^(?:10(?:\.0)?|[1-9](?:\.[0-9])?|0?\.[1-9])$,它基本上检查范围内的正十进制数。

还尝试使用^\-?(\d+\.?\d*|\d*\.?\d+)$检查任何十进制数字。

我不知道如何合并两个正则表达式。

1 个答案:

答案 0 :(得分:3)

您可以使用

^-?(?:\d(?:\.\d{1,2})?|10(?:\.0{1,2})?)$

请参见regex demoregex graph

enter image description here

详细信息

  • ^-字符串的开头
  • -?-可选的-符号
  • (?:-一个非捕获组的开始:
    • \d-任何数字
    • (?:\.\d{1,2})?-点和1或2位数字的可选序列
    • |-或
    • 10-10字符串
    • (?:\.0{1,2})?-.然后是1或2个零的可选序列
  • )-非捕获组的结尾
  • $-字符串的结尾。
相关问题