Java String.split() on comma followed by non-whitespace
java, regex, split
Solution
Positive lookaheads:
a.split(",(?=\\S)");
Problem
I'm parsing a dataset which annoyingly decided to comma-delimit items in a TSV (PharmaGKB pathways, I'm looking at you), but allow commas in each logical element. Basically, comma-followed-by-space means no delimit, while comma followed by character means new element. "This is one, element,two element, three element" Should be: - This is one, element - two element - three element I have the regex `a.split(",\\S+");`, which splits fine but it removes the first character after every split. - This is one, element - wo element - hree element Regex is like going to the dentist for me, help is much appreciated.