Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.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 ip地址正则表达式拒绝数字0_Javascript_Regex - Fatal编程技术网

使javascript ip地址正则表达式拒绝数字0

使javascript ip地址正则表达式拒绝数字0,javascript,regex,Javascript,Regex,难以确定如何使其拒绝值: ^(?:(25(?!0)[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])(\.(?!$)|$)){4}$ 最后一个[0-9]术语应该是[1-9] 此外,要在地址的数字分量之间要求一个句点,句点应该转义:\.如果您不打算禁止250作为一个分量,25(?!0)应该是25 例如: 0.x.x.x 0.0.0.0 0.x.x.0 不管它值多少钱,我认为一个只使用正则表达式的方法(即使可能)来解决这个问题太复杂了。最好将其分解为条

难以确定如何使其拒绝值:

^(?:(25(?!0)[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])(\.(?!$)|$)){4}$

最后一个
[0-9]
术语应该是
[1-9]

此外,要在地址的数字分量之间要求一个句点,句点
应该转义:
\.
如果您不打算禁止
250
作为一个分量,
25(?!0)
应该是
25

例如:

0.x.x.x
0.0.0.0
0.x.x.0

不管它值多少钱,我认为一个只使用正则表达式的方法(即使可能)来解决这个问题太复杂了。最好将其分解为条件并消除无效的条件。在句点上拆分字符串并验证每个数字不是更容易维护吗?此外,如果0.x.x.x被拒绝,那么0.0.0.0和0.x.x.0也被隐式拒绝如果您的意思是不只是点之间的零,可能
^(?[0-9.]*\b0{1,3}\b).*
并用匹配的ip号替换。*
^(?:(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[1-9])(\.(?!$)|$)){4}$