code: public static String removeStartIgnoreCase(String str, String remove) {
          if (isEmpty(str) || isEmpty(remove)) {
              return str;
          }
          if (startsWithIgnoreCase(str, remove)) {
              return str.substring(remove.length());
          }
          return str;
      }
docs: <p>
  Case insensitive removal of a substring if it is at the begining of a
  source string, otherwise returns the source string.
  </p>
  
  <p>
  A <code>null</code> source string will return <code>null</code>. An empty
  ("") source string will return the empty string. A <code>null</code>
  search string will return the source string.
  </p>
  
  <pre>
  StringUtils.removeStartIgnoreCase(null, *)      = null
  StringUtils.removeStartIgnoreCase("", *)        = ""
  StringUtils.removeStartIgnoreCase(*, null)      = *
  StringUtils.removeStartIgnoreCase("www.domain.com", "www.")   = "domain.com"
  StringUtils.removeStartIgnoreCase("www.domain.com", "WWW.")   = "domain.com"
  StringUtils.removeStartIgnoreCase("domain.com", "www.")       = "domain.com"
  StringUtils.removeStartIgnoreCase("www.domain.com", "domain") = "www.domain.com"
  StringUtils.removeStartIgnoreCase("abc", "")    = "abc"
  </pre>
  
  @param str
  the source String to search, may be null
  @param remove
  the String to search for (case insensitive) and remove, may be
  null
  @return the substring with the string removed if found, <code>null</code>
  if null String input
  @since 2.4