private static boolean startsWith(final String str, final String prefix, final boolean ignoreCase) {
    if (str == null || prefix == null) {
      return (str == null && prefix == null);
    }
    if (prefix.length() > str.length()) {
      return false;
    }
    return str.regionMatches(ignoreCase, 0, prefix, 0, prefix.length());
  }
private static boolean startsWith(final String str, final String prefix, final boolean ignoreCase) {
    if (str == null || prefix == null) {
      return (str == null && prefix == null);
    }
    if (prefix.length() > str.length()) {
      return false;
    }
    return str.regionMatches(ignoreCase, 0, prefix, 0, prefix.length());
  }
private static boolean startsWith ( final String str , final String prefix , final boolean ignoreCase ) { if ( str == null || prefix == null ) { return ( str == null && prefix == null ) ; } if ( prefix . length ( ) > str . length ( ) ) { return false ; } return str . regionMatches ( ignoreCase , 0 , prefix , 0 , prefix . length ( ) ) ; }
<p>
Check if a String starts with a specified prefix (optionally case insensitive).
</p>

@see java.lang.String#startsWith(String)
@param str
the String to check, may be null
@param prefix
the prefix to find, may be null
@param ignoreCase
indicates whether the compare should ignore case (case insensitive) or not.
@return <code>true</code> if the String starts with the prefix or both <code>null</code>
<p > Check if a String starts with a specified prefix ( optionally case insensitive ) . < / p >