Вот более общее решение (разбиение по несловесным символам):
String[] stringList = s.split("\\W+");
Из шаблона Javadocs:
\w A word character: [a-zA-Z_0-9]
\W A non-word character: [^\w]
Или, если вы используете Гуава , вы можете сделать эквивалент (на самом деле не совсем эквивалентный, так как он также соответствует не-ascii букв):
for(String word:
Splitter.on(CharMatcher.JAVA_LETTER_OR_DIGIT.negate()).split(str)){
// do something
}