Ist es möglich, einen regulären Ausdruck zu definieren, der mit jedem Zeichen außer einem bestimmten definierten Zeichen oder Zeichensatz übereinstimmt?
Grundsätzlich wollte ich eine Zeichenfolge entweder durch Komma (,) oder Semikolon (;) teilen. Also dachte ich daran, es mit einem regulären Ausdruck zu machen, der zu allem passt, bis er auf ein Komma oder ein Semikolon stößt.
Verwenden Sie Zeichenklassen. Eine Charakterklasse, die mit caret beginnt, entspricht allem, was nicht in der Klasse enthalten ist.
quelle
Verwenden Sie eine negative Zeichenklasse :
quelle
Benutze das:
quelle
(?:([^,;]*)(?:[^,;]|$))
' (PCRE mit nicht erfassenden Klammern) verwenden. Die Alternativen eines Kommas oder Semikolons nach dem Feld oder dem Ende der Aufzeichnung sorgen dafür, dass die Dinge besser funktionieren. Überlegen Sie auch, ob leere Felder zulässig sind.