Result (@NotNull String text) { final String[] strings = splitWords(text); if (strings.length > 0) { final StringBuilder buf = new StringBuilder(); buf.append(StringUtil.toLowerCase(strings[0])); for (int i = 1; i < strings.length; i++) { String string = strings[i]; if (Character.isLetterOrDigit(string.charAt(0))) { buf.append(StringUtil.capitalize(StringUtil.toLowerCase(string))); } } return new TextResult(buf.toString()); } return new TextResult(""); }