Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式范围在0到75之间,包括两个十进制数字_Regex_Validation - Fatal编程技术网

Regex 正则表达式范围在0到75之间,包括两个十进制数字

Regex 正则表达式范围在0到75之间,包括两个十进制数字,regex,validation,Regex,Validation,我是正则表达式的初学者,所以说到它,我试图通过在堆栈中查找类似的问题来学习它,但是经过多次尝试,我陷入了困境,我无法找到我自己的正则表达式中的问题所在 我想找人帮我处理我已经创建的正则表达式(见下文),或者给我一个更好的正则表达式想法/解决方案 我需要一个正则表达式,其中包含0到75之间的数字,最多4位,包括2位十进制数字。例如75.00或15.50,但不带小数位数的完整数字应为有效数字,例如:75,15(不包括00) 下面是两个有效和无效的数字: 有效数字: 0 0.1 0.10 5.15 5

我是正则表达式的初学者,所以说到它,我试图通过在堆栈中查找类似的问题来学习它,但是经过多次尝试,我陷入了困境,我无法找到我自己的正则表达式中的问题所在

我想找人帮我处理我已经创建的正则表达式(见下文),或者给我一个更好的正则表达式想法/解决方案

我需要一个正则表达式,其中包含0到75之间的数字,最多4位,包括2位十进制数字。例如75.0015.50,但不带小数位数的完整数字应为有效数字,例如:75,15(不包括00

下面是两个有效和无效的数字:

有效数字:

0
0.1
0.10
5.15
5.52
15.50
74.99
75.00
75
00
-10
-0
-0.50
00.50
05.15
75.01
76.00
76
76.19
无效数字:

0
0.1
0.10
5.15
5.52
15.50
74.99
75.00
75
00
-10
-0
-0.50
00.50
05.15
75.01
76.00
76
76.19
这是我已经创建的正则表达式,显然应该是固定的:

^(75(?:\.00?)?|[1-7]?[0-5](?:\.\d\d?)?|\d(?:\.\d?\d)?)$
这里也有


p、 我一直在寻找类似的答案。

您需要通过以下方式修复您的模式:

^(?:75(?:\.00?)?|7[0-4](?:\.\d\d?)?|[1-6]?\d(?:\.\d\d?)?)$

详细信息

  • ^(?:
    -字符串的开始和非捕获组的开始(这样锚可以应用于替换组中的所有备选方案)
  • 75(?\.00?)
    -
    75
    后跟可选的
    0
    和可选的
    0
  • |
    -或
  • 7[0-4](?:\.\d\d?)
    -
    7
    后跟一个从
    0
    4
    的数字,然后后跟一个可选的
    序列、一个数字和一个可选的数字
  • |
    -或
  • [1-6]?\d(?:\.\d\d?
    -从
    1
    6
    的可选数字,后跟任意1个数字,然后是
    的可选序列,一个数字,然后是可选数字
  • )$
    -第一组的结尾和字符串的结尾

我非常喜欢使用您演示的这个正则表达式工具。我认为您需要在正则表达式中添加更多类:

^([1-6]?[0-9])$| ^(7[0-5])$| ^([1-6]?[0-9])。[0-9][0-9]?)$| ^(7[0-4])。[0-9][0-9]?)$| ^(75.00?)$


您好,

请参阅,非常感谢您的正则表达式和解释。现在一切都明白了我错过了什么。它工作得很好。是的,它是一个很好的工具。谢谢你的回答。