Frank Schönmann: Tags aus Text entfernen

Beitrag lesen

hi!

Ich habe ein Problem, das ich nicht lösen kann. Ich will aus einem
Text sämtliche Tags einfach entfernen, natürlich auch
Zeilenübergreifend.
   $message =~ s/<.+>/  /sg;
funktioniert nicht, weil dieser Befehl alles ab der ersten spitzen
Klammer bis zur letzten rauslöscht, also auch den gesamten Text
zwischen dem ersten Tag und dem letzten.

Das liegt daran, dass reguläre Ausdrücke "gierig" (engl. "greedy")
sind, d.h. sie matchen möglichst viel statt möglichst wenig. Das kann
man durch ein ? allerdings ändern:
  $message =~ s/<.+?>//sg;

bye, Frank!