code: public static boolean containsIgnoreCase(String str, String searchStr) {
        if (str == null || searchStr == null) {
            return false;
        }
        return contains(str.toUpperCase(), searchStr.toUpperCase());
    }
docs: <p>Checks if String contains a search String irrespective of case,
  handling <code>null</code>. This method uses
  {@link #contains(String, String)}.</p>
  
  <p>A <code>null</code> String will return <code>false</code>.</p>
  
  <pre>
  GosuStringUtil.contains(null, *) = false
  GosuStringUtil.contains(*, null) = false
  GosuStringUtil.contains("", "") = true
  GosuStringUtil.contains("abc", "") = true
  GosuStringUtil.contains("abc", "a") = true
  GosuStringUtil.contains("abc", "z") = false
  GosuStringUtil.contains("abc", "A") = true
  GosuStringUtil.contains("abc", "Z") = false
  </pre>
  
  @param str  the String to check, may be null
  @param searchStr  the String to find, may be null
  @return true if the String contains the search String irrespective of
  case or false if not or <code>null</code> string input