正则表达式验证IP地址是否合法(含java)

正则表达式:

^(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[0-9])\.((1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.){2}(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$

java方法:


    public static boolean isIp(String ip) {
        //判断IP地址的正则表达式
        String ipRegex = "\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}";
        //如果前三项判断都满足,就判断每段数字是否都位于0-255之间
        if (StringUtils.isNotEmpty(ip) && ip.matches(ipRegex)) {
            String[] ipArray = ip.split("\\.");
            for (int i = 0; i < ipArray.length; i++) {
                int number = Integer.parseInt(ipArray[i]);
                //判断每段数字是否都在0-255之间
                if (number < 0 || number > 255) {
                    return false;
                }
            }
            return true;
        } else {//如果与正则表达式不匹配,则返回false
            return false;
        }
    }

你可能感兴趣的:(正则表达式)