在输入IP地址时一般会要对输入的IP地址的格式是否正确进行判断,下面就记录下判断IP的demo:
public boolean isIP(String addr){
//首先对长度进行判断 if(addr.length() < 7 || addr.length() > 15 || "".equals(addr)){ return false; }n /** * 判断IP格式和范围 */ String rexp = "([1-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}"; Pattern pat = Pattern.compile(rexp); Matcher mat = pat.matcher(addr); boolean ipAddress = mat.find(); if (ipAddress == true){ String ips[] = addr.split("\\."); if(ips.length == 4){ try{ for(String ip : ips){ if(Integer.parseInt(ip) < 0 || Integer.parseInt(ip) > 255){ return false; } } }catch (Exception e){ return false; } return true; }else{ return false; } } return ipAddress; }