Java IP Address Validate isIp(final String input)

Here you can find the source of isIp(final String input)

Description

is Ip

License

Open Source License

Declaration

public static boolean isIp(final String input) 

Method Source Code


//package com.java2s;
import java.util.regex.Pattern;

public class Main {
    private static final Pattern IPV4_PATTERN = Pattern
            .compile("^(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}$");
    private static final Pattern IPV6_STD_PATTERN = Pattern.compile("^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$");
    private static final Pattern IPV6_HEX_COMPRESSED_PATTERN = Pattern.compile(
            "^((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)::((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)$");

    public static boolean isIp(final String input) {
        if (null == input || "".equals(input)) {
            return false;
        }//  w w w.  ja v  a2 s  .c o m
        String ip = input.trim();

        return (isIPv4Address(ip) || isIPv6Address(ip));
    }

    public static boolean isIPv4Address(final String input) {
        return IPV4_PATTERN.matcher(input).matches();
    }

    public static boolean isIPv6Address(final String input) {
        return isIPv6StdAddress(input) || isIPv6HexCompressedAddress(input);
    }

    public static boolean isIPv6StdAddress(final String input) {
        return IPV6_STD_PATTERN.matcher(input).matches();
    }

    public static boolean isIPv6HexCompressedAddress(final String input) {
        return IPV6_HEX_COMPRESSED_PATTERN.matcher(input).matches();
    }
}

Related

  1. isIp(Object obj)
  2. isIP(String input)
  3. isIp(String ip)
  4. isIP(String ip)