gpt4 book ai didi

java - 在 Java 中验证 IPv4 字符串

转载 作者:IT老高 更新时间:2023-10-28 20:39:05 26 4
gpt4 key购买 nike

Bellow 方法正在验证字符串是否正确 IPv4 地址,如果有效则返回 true。非常感谢正则表达式和优雅的任何改进:

public static boolean validIP(String ip) {
if (ip == null || ip.isEmpty()) return false;
ip = ip.trim();
if ((ip.length() < 6) & (ip.length() > 15)) return false;

try {
Pattern pattern = Pattern.compile("^(?:(?: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]?)$");
Matcher matcher = pattern.matcher(ip);
return matcher.matches();
} catch (PatternSyntaxException ex) {
return false;
}
}

最佳答案

这是一种更易于阅读、效率稍低的方法。

public static boolean validIP (String ip) {
try {
if ( ip == null || ip.isEmpty() ) {
return false;
}

String[] parts = ip.split( "\\." );
if ( parts.length != 4 ) {
return false;
}

for ( String s : parts ) {
int i = Integer.parseInt( s );
if ( (i < 0) || (i > 255) ) {
return false;
}
}
if ( ip.endsWith(".") ) {
return false;
}

return true;
} catch (NumberFormatException nfe) {
return false;
}
}

关于java - 在 Java 中验证 IPv4 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4581877/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com