private static String prependIfMissing(final String str,final CharSequence prefix,final boolean ignoreCase,final CharSequence... prefixes){
  if (str == null || isEmpty(prefix) || startsWith(str,prefix,ignoreCase)) {
    return str;
  }
  if (prefixes != null && prefixes.length > 0) {
    for (    final CharSequence p : prefixes) {
      if (startsWith(str,p,ignoreCase)) {
        return str;
      }
    }
  }
  return prefix.toString() + str;
}

private static String prependIfMissing ( final String str , final CharSequence prefix , final boolean ignoreCase , final CharSequence ... prefixes ) { if ( str == null || isEmpty ( prefix ) || startsWith ( str , prefix , ignoreCase ) ) { return str ; } if ( prefixes != null && prefixes . length > 0 ) { for ( final CharSequence p : prefixes ) { if ( startsWith ( str , p , ignoreCase ) ) { return str ; } } } return prefix . toString ( ) + str ; }
prepends the prefix to the start of the string if the string does not already start with any of the prefixes .
