我需要验证格式为000000000到255255255的IP范围,而在3组数字之间没有任何分隔符.最终IP所包含的三个组中的每一个都应该是000(是,0填充)到255.
由于这是我的第一个stackoverflow条目,如果我没有正确遵循礼仪,请宽容.
^([01]\d{2}|2[0-4]\d|25[0-5]){3}$
其中包括以下几个部分:
000-199
200-249
250-255
如果您决定需要4个八位字节而不是3个八位字节,只需将最后一个更改{3}
为{4}
.此外,您也应该了解IPv6.
我个人不会使用正则表达式.我认为更容易确保字符串由9位数字组成,将字符串分成3组3位数字,然后检查每个数字是否在0到255之间(包括0和255).
如果你真的坚持正则表达式,那么你可以使用这样的东西:
"([0-1][0-9][0-9]|2[0-4][0-9]|25[0-5]){3}"
该表达式包括三个术语的交替:第一个匹配000-199
,第二个匹配,200-249
第三个匹配250-255
.该{3}
要求严丝合缝的三倍.