Используйте Pattern / Matcher в пакете java.util.regex:
для каждой строки в вашем массиве выполните следующие действия:
StringBuffer output = new StringBuffer();
Matcher match = Pattern.compile("[^|_](\w)").matcher(inStr);
while(match.find()) {
match.appendReplacement(output, matcher.match(0).ToUpper());
}
match.appendTail(output);
// Will have the properly capitalized string.
String capitalized = output.ToString();
Регулярное выражение ищет либо начало строки, либо подчеркивание "[^ | _]"
Затем помещает следующий символ в группу "(\ w)"
Затем код проходит через все совпадения во входной строке с заглавной буквы первой удовлетворяющей группы.