我有一个验证普通 IP 地址的模式,即:
private static final String PATTERN =
"^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." +
"([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." +
"([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." +
"([01]?\\d\\d?|2[0-4]\\d|25[0-5])$";
还有一个验证方法来检查输入是否是有效的 IP 地址:
private static boolean validate(final String ip){
Pattern pattern = Pattern.compile(PATTERN);
Matcher matcher = pattern.matcher(ip);
return matcher.matches();
}
但是,现在我需要添加对 CIDR(例如 84.240.40.0/24)表示法和没有主机的 IP 范围(例如 172.24.105)的验证,我尝试了许多不同的模式,但没有得到具体的东西。有什么建议么?