Java Regex - Zeichenfolge in Leerzeichen teilen - Leerzeichen in Anführungszeichen und Anführungszeichen ignorieren [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Eine verschachtelte Zeichenfolge in Anführungszeichen setzen 3 answers

Ich suche nach regulären Ausdrücken, um in Java Folgendes zu tun:

String originalString = "";
String splitString[] = originalString.spilt(regex);

Einige Testfälle:

Original1: foo bar "simple"
Spilt1: { "foo", "bar", "\"simple\"" }

Original2: foo bar "harder \"case"
Spilt2: { "foo", "bar", "\"harder \"case\"" }

Original3: foo bar "harder case\\"
Spilt3: { "foo", "bar", "\"harder case\\"" }

Einige Ausschnitte, auf die ich gestoßen bin:

# Does not react to escaped quotes
 (?=([^\"]*\"[^\"]*\")*[^\"]*$)
# Finds relevant quotes that surround args
(?<!\\)(?:\\{2})*\"

Vielen Dank

Antworten auf die Frage(4)

Ihre Antwort auf die Frage