Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.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
Javascript 用于验证两个范围之间的数字的正则表达式_Javascript_Java_Regex_Validation - Fatal编程技术网

Javascript 用于验证两个范围之间的数字的正则表达式

Javascript 用于验证两个范围之间的数字的正则表达式,javascript,java,regex,validation,Javascript,Java,Regex,Validation,如何使用正则表达式验证0到99999.99之间的数字 基本上,它应该接受像0.01、0000.01、.01和9999.99这样的值 此外,它在点(.)之后应该只有两个值。 我试过下面这样的方法,但对我不起作用 /^[0-9]{1,5}.[0-9]{2}$/ decimal is optional 请找人帮忙。Javascript正则表达式: /^\d{1,5}(\.\d{1,2})?$/ Javascript正则表达式: /^\d{1,5}(\.\d{1,2})?$/ 在正则表达式中,

如何使用正则表达式验证0到99999.99之间的数字

基本上,它应该接受像
0.01、0000.01、.01和9999.99这样的值

此外,它在点(.)之后应该只有两个值。

我试过下面这样的方法,但对我不起作用

/^[0-9]{1,5}.[0-9]{2}$/ 

decimal is optional
请找人帮忙。

Javascript正则表达式:

/^\d{1,5}(\.\d{1,2})?$/
Javascript正则表达式:

/^\d{1,5}(\.\d{1,2})?$/

在正则表达式中,
字符具有特殊含义,因此需要对其进行转义

不管怎样,让我看看我是否明白了规则:

  • 小数点是可选的
  • 如果未给出小数点:
    • 在1到5位之间
  • 如果存在小数点:
    • 小数点前0到5位之间
    • 小数点后1到2位之间
由于位数取决于小数点的存在,因此可以让正则表达式有两个选择,用
分隔

选项1(无小数点):
[0-9]{1,5}

选择2(小数点):
[0-9]{0,5}\[0-9]{1,2}

由于需要锚定(
^$
),因此可以将锚定放在两个选项中,也可以用括号将选项集括起来。要使其不捕获,请使用
(?:xxx)

最终正则表达式是其中之一:

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

您可以看到第二个字符在上生效。

字符在正则表达式中有特殊含义,因此需要对其进行转义

不管怎样,让我看看我是否明白了规则:

  • 小数点是可选的
  • 如果未给出小数点:
    • 在1到5位之间
  • 如果存在小数点:
    • 小数点前0到5位之间
    • 小数点后1到2位之间
由于位数取决于小数点的存在,因此可以让正则表达式有两个选择,用
分隔

选项1(无小数点):
[0-9]{1,5}

选择2(小数点):
[0-9]{0,5}\[0-9]{1,2}

由于需要锚定(
^$
),因此可以将锚定放在两个选项中,也可以用括号将选项集括起来。要使其不捕获,请使用
(?:xxx)

最终正则表达式是其中之一:

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

您可以看到第二个在上生效。

如果使用javascript,则下面的正则表达式可以工作:

^\d{0,5}(((\.){0})|((\.){1}\d{1,2}))$

上述所有情况都令人满意。

如果使用javascript,则下面的正则表达式可以工作:

^\d{0,5}(((\.){0})|((\.){1}\d{1,2}))$

上述所有案例都令人满意。

谢谢你和
^(?:\d{1,5}(?:\.\d{1,2})\.\d{1,2}$
是我想要得到的,这符合我的目的。

谢谢你和
^(?:\d{1,5}(?:\.\d{1,2})\.\d{1,2})$
是我想要得到的,这符合我的目的。

这是
javascript
还是
java
,“它对我不起作用”是什么意思?这是
javascript
还是
java
,“它对我不起作用”是什么意思?