code: public static String capitalizeWords(final Object target, final Object delimiters) {
  
          if (target == null) {
              return null;
          }
  
          final char[] buffer = target.toString().toCharArray();
          final char[] delimiterChars =
                  (delimiters == null ? null : delimiters.toString().toCharArray());
          if (delimiterChars != null) {
              // needed in order to use binarySearch
              Arrays.sort(delimiterChars);
          }
  
          int idx = 0;
  
          idx = findNextWord(buffer, idx, delimiterChars);
          while (idx != -1) {
              buffer[idx] = Character.toTitleCase(buffer[idx]);
              idx++;
              idx = findNextWord(buffer, idx, delimiterChars);
          }
  
          return new String(buffer);
  
      }
docs: <p>
  Convert all the first letter of the words of target to uppercase
  (title-case, in fact), using the specified delimiter chars for determining
  word ends/starts.
  </p>
  
  @param target the String to be capitalized. If non-String object, toString()
  will be called.
  @param delimiters delimiters of the words. If non-String object, toString()
  will be called.
  @return String the result of capitalizing the target.
  @since 1.1.2