我有一个用于验证常规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)添加验证,我尝试了许多不同的模式,但没有得到什么具体的东西。有什么建议吗?
192.168.1.20/24
)。请尝试理解这些正则表达式,而不仅仅是从任何地方复制/粘贴它们。 - Jonathon Reinhart