I essentially want to split up a string based on the sentences, therefore (for the sake of what I\'m doing), whenever there is a !, ., ?
You can use the String.split(String regex) method with parameter "[!.?:;]".
The argument of String.split is a regex, so you can create a pattern that matches any of those characters.
s.split("[.!:;?]");
String.split takes a regex to split on, so you can simply:
mystring.split("[!.?:;]");
Guava's Splitter is a bit more predictable than String.split().
Iterable<String> results = Splitter.on(CharMatcher.anyOf("!.?:;"))
.trimResults() // only if you need it
.omitEmptyStrings() // only if you need it
.split(string);
and then you can use Iterables.toArray or Lists.newArrayList to wrap the output results how you like.