title: Validating IPv4 string in Java
body: <p>Bellow method is validating if string is correct IPv4 address it returns true if it is valid. Any improvements in regex and elegance would be very appreciated: </p>
  
  <pre><code>public static boolean validIP(String ip) {
      if (ip == null || ip.isEmpty()) return false;
      ip = ip.trim();
      if ((ip.length() &lt; 6) &amp; (ip.length() &gt; 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;
      }
  }
  </code></pre>