Ach, könnte man doch für sowas eine Rechnung schreiben … aber man macht es ja gerne ;-)
Man sieht es dem GREP nicht an, aber ich hab einen Moment dafür gebraucht, daher will ich es erklären:
Gregors Anforderung schreit eigentlich nach
<[^>]+<
Das Problem ist jetzt aber, das nicht '>' negiert wird, sondern '&,g,t,;'. Also jedes Zeichen einzeln.
<[^(>)]+<
Das funktioniert ebenfalls nicht, weil die runden Klammern innerhalb der eckigen ihre Bedeutung verlieren und daher wie literale Zeichen behandelt werden.
Lösung: <((?!>).)+?<
Ein Lookahead kann entweder vor oder nach dem Suchausdruck stehen. Steht er davor, kann ich den Ausdruck 2x durchsuchen. Wichtig sind hier die runden Klammern! Durch den Punkt als beliebiges Zeichen wird quasi bei jedem Zeichen geprüft, ob links davon kein '>' steht.
als Antwort auf: [#551153]