Thread Regulärer Ausdruck (11 answers)
Opened by Kruemel at 2011-08-31 09:55

payx
 2011-09-01 09:22
#151991 #151991
User since
2006-05-04
564 Artikel
BenutzerIn

user image
Hallo clms,

danke für die Hinweise!

Vor allem die minimal match or non-greedy quantifiers mit dem zusätzlichen ? hatte ich nicht recht präsent.

Da Kruemel geschrieben hatte, sie
Quote
habe ich keinerlei Erfahrung mit Regexp in Perl
, wollte ich das Beispiel einfach halten und habe nicht versucht, es so robust zu machen, dass es für eine produktive Anwendung übernommen werden könnte. (Die Problemstellung hört sich nach einer Übungsaufgabe an.). Aber wenn mehrere blubber-Blöcke vorkommen können, dann ist meine Lösung natürlich wirklich unbrauchbar.

Wo wir nun schon dabei sind:

Bei Deiner Lösung bleibt jetzt (bei meinem Beispieltext <DATA> eine Leerzeile zurück. Das ist vermutlich nicht gewollt.

So wird die ganze Zeile gelöscht, wenn sie nur /end blubber, Leerzeichen und einen Zeilenumbruch enthält, wenn aber nach /end blubber mindestens ein Leerzeichen und dann weiterer Text steht, bleibt die Zeile mit diesem Text stehen:

Code (perl): (dl )
$text =~ s/\/begin blubber.*?\/end blubber\s*\n?//sg;


(Also noch ein ?, ansonsten Deine Lösung.)

Grüße
payx

View full thread Regulärer Ausdruck