Weil Regex standardmäßig gierig ist. D.h. die Ausdrücke .*
oder .+
Versuchen Sie, so viele Zeichen wie möglich zu nehmen. Also <.+>
erstreckt sich vom ersten <
bis zum letzten >
. Machen Sie es faul, indem Sie den faulen Operator ?
verwenden :
regexp_replace(teststring, '<.+?>')
oder
regexp_replace(teststring, '<.*?>')
Jetzt die Suche nach >
stoppt beim ersten >
angetroffen.
Beachten Sie, dass .
enthält >
auch, also die Greedy-Variante (ohne ?
) schluckt den gesamten >
aber das letzte.