code: public static int indexOfAny(String str, char[] searchChars) {
          if (isEmpty(str) || ArrayUtils.isEmpty(searchChars)) {
              return INDEX_NOT_FOUND;
          }
          int csLen = str.length();
          int csLast = csLen - 1;
          int searchLen = searchChars.length;
          int searchLast = searchLen - 1;
          for (int i = 0; i < csLen; i++) {
              char ch = str.charAt(i);
              for (int j = 0; j < searchLen; j++) {
                  if (searchChars[j] == ch) {
                      if (i < csLast && j < searchLast && CharUtils.isHighSurrogate(ch)) {
                          // ch is a supplementary character
                          if (searchChars[j + 1] == str.charAt(i + 1)) {
                              return i;
                          }
                      } else {
                          return i;
                      }
                  }
              }
          }
          return INDEX_NOT_FOUND;
      }
docs: <p>Search a String to find the first index of any
  character in the given set of characters.</p>
  
  <p>A <code>null</code> String will return <code>-1</code>.
  A <code>null</code> or zero length search array will return <code>-1</code>.</p>
  
  <pre>
  StringUtils.indexOfAny(null, *)                = -1
  StringUtils.indexOfAny("", *)                  = -1
  StringUtils.indexOfAny(*, null)                = -1
  StringUtils.indexOfAny(*, [])                  = -1
  StringUtils.indexOfAny("zzabyycdxx",['z','a']) = 0
  StringUtils.indexOfAny("zzabyycdxx",['b','y']) = 3
  StringUtils.indexOfAny("aba", ['z'])           = -1
  </pre>
  
  @param str  the String to check, may be null
  @param searchChars  the chars to search for, may be null
  @return the index of any of the chars, -1 if no match or null input
  @since 2.0