【发布时间】:2015-06-17 10:26:38
【问题描述】:
我想验证一个带掩码的 IP 地址,如下所示:192.168.32.4/24,但我只找到了如何验证不带掩码的 IP:192.168.32.4
这是我的代码:
$target = "192.168.34.12";
if (preg_match("/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/", $target)) {
echo "correct";
} else {
echo "incorrect";
}
提前致谢。
[已解决]
$target = "192.168.34.12/24";
$regex = "/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/([1-9]|1[0-9]|2[0-4])$/";
if (preg_match($regex, $target)) {
echo "correct";
} else {
echo "incorrect";
}
【问题讨论】:
-
如果你
explode/然后分别验证 IP 和掩码怎么办? -
这不是我要找的,我要验证整个表达式,而不仅仅是IP
标签: php validation ip-address