IP 地址验证可用范围

问题描述 投票:0回答:1

我正在使用以下正则表达式测试来验证 IP 地址,它似乎确实有效。

/\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/

但是我被建议不要做以下事情

第一个八位位组的最高值为 223(224-239 是多播,240 及以上被保留)第四个八位位组的最高值为 254

如何调整正则表达式以匹配此条件?

我尝试将第一部分

25[0-5]
设置为
22[0-3]|
,但这仍然允许使用224.x.x.x

的地址

有人可以建议如何做到这一点吗?

谢谢

regex validation ip
1个回答
0
投票

我尝试将第一部分

25[0-5]
设置为
22[0-3]|

您还需要调整第二部分,将

[0-4]
更改为
[01]

我想你对第四个八位字节没有问题,其中

[0-5]
应该变成
[0-4]

© www.soinside.com 2019 - 2024. All rights reserved.