Ich benutze
%Vor%entspricht Zeichenfolge wie ## MyString ## , die nicht die Form von
hat %Vor%Dies funktioniert für das obige Formular, aber nicht dafür: (Es passt immer noch, sollte nicht übereinstimmen)
%Vor%Ich habe es versucht:
%Vor%ohne Glück. Alle Vorschläge werden sehr geschätzt.
Bearbeiten: Ich benutze PHP preg_match () Funktion
Dies ist nicht perfekt (dafür gibt es HTML-Parser), aber es wird für die meisten HTML-Dateien funktionieren:
%Vor%Die Idee ist einfach. Sie suchen nach einer Zeichenfolge außerhalb von Tags. Um außerhalb der Tags zu sein, muss die nächste vorausgehende angewinkelte Klammer geschlossen sein (oder es gibt überhaupt keine Klammer), und die nächstfolgende muss sich öffnen (oder keine). Dies setzt voraus, dass in Attributwerten keine spitzen Klammern verwendet werden.
Wenn es Ihnen wirklich wichtig ist, dass der Attributname "value" ist, dann können Sie nach:
suchen %Vor% ... und dann einfach die Übereinstimmung negieren ( !preg_match(...)
).
hier ist zumindest ein Startpunkt, es funktioniert für die gegebenen Beispiele.
%Vor%Tags und Links regex lookbehind