Heim >Java >javaLernprogramm >Wie ordne ich Kommas außerhalb von Klammern mithilfe regulärer Ausdrücke in Java zu?
Übereinstimmung von Kommas außerhalb von Klammern mithilfe regulärer Ausdrücke
Problem:
Betrachten Sie eine Zeichenfolge, die mehrere enthält Kommas wie „12,44,foo,bar,(23,45,200),6.“ Das Ziel besteht darin, einen regulären Ausdruck in Java zu erstellen, der mit allen Kommas außer den in Klammern eingeschlossenen übereinstimmt, d. h. im gegebenen Beispiel nur mit den Kommas nach 23 und 45.
Lösung:
Um dies zu erreichen, müssen wir einen regulären Ausdruck verwenden, der eine negative Lookahead-Behauptung enthält. Hier ist ein regulärer Java-Ausdruck, der diese Anforderung erfüllt:
Pattern regex = Pattern.compile( ", # Match a comma\n" + "(?! # only if it's not followed by...\n" + " [^(]* # any number of characters except opening parens\n" + " \) # followed by a closing parens\n" + ") # End of lookahead", Pattern.COMMENTS);
Erklärung:
Das obige ist der detaillierte Inhalt vonWie ordne ich Kommas außerhalb von Klammern mithilfe regulärer Ausdrücke in Java zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!