我想检查正则表达式中的IP地址范围, 我就是用这种方法,效果很好
function validate_ip(ip)
{
// See if x looks like an IP address using our "almost IP regex".
var regex = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;
var match = regex.exec(ip);
if (!match) return false;
// Additional code to check that the octets aren't greater than 255:
for (var i = 1; i <= 4; ++i) {
if (parseInt(match[i]) > 255)
return false;
}
return true;
}
现在我想仅在正则表达式中执行范围和语法检查 这可以做到吗?
最佳答案
最直接的方法是查看不同的情况:
25[0-5]|2[0-4]\d|1?\d\d?
这将匹配 0 到 255 之间的数字,不允许使用前缀零,例如:055。
如果你想排除零:
25[0-5]|2[0-4]\d|1\d\d|[1-9]\d?
关于javascript - 仅使用 JavaScript 正则表达式检查 IP 地址范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14503795/