Ich habe nach solchen Fragen gesucht, aber alle Fälle, die ich gefunden habe, wurden problemspezifisch gelöst, wie zum Beispiel die Verwendung von! g in vi, um die Regex-Treffer zu negieren oder andere Dinge zu finden , ohne eine Regex-Negation.
Ich bin also an einer "reinen" Lösung interessiert:
Wenn ich eine Reihe von Strings habe, muss ich sie mit einem regulären Ausdruck-Matcher filtern, so dass nur die Strings, denen eine bestimmte Teilstring fehlt, übereinstimmen. Zum Beispiel "Foo" herausfiltern in:
%Vor%würde ergeben:
%Vor% Ich habe versucht, es mit negativem Look-ahead / hinterher (?!regex)
/ (?<!regex)
zu konstruieren, konnte es aber nicht herausfinden. Ist das überhaupt möglich?
Versuchen Sie diesen regulären Ausdruck:
%Vor%Dies wird ein Zeichen gleichzeitig verbrauchen und prüfen, ob kein Foo voraus ist. Das gleiche kann mit einem negativen Look-Behind gemacht werden:
%Vor%Aber Sie können das auch ohne Umgehungszusicherungen tun:
%Vor%Dies entspricht einem beliebigen Zeichen außer F oder einem F , auf das entweder kein o folgt oder ein o folgt nicht gefolgt von einem anderen o .
Tags und Links regex regex-negation