Regular Expressions sind habgierig
Cruz
- perl
0 Cheatah
Hallo Leute,
Ich versuche mit einer RegExp den ersten HTML Kommentar zu matchen, also so:
$string =~ m/<!--(.+)-->/;
print $1;
Nur leider kriege ich dann als ergebnis alles zwischen dem ersten <!-- und dem allerletztem --> im HTML Dokument.
Ich habe die Option m//s; probiert, die laut Buch nur in einer Zeile matcht, aber das hat genau den selben Effekt gebracht.
Kann mir jemand zeigen, wie ich einer RegExp verklickern kann, daß ich nur den Inhlat des ersten HTML Kommentars möchte?
Gruß
Cruz
Hi,
da das Thema Deiner Frage alles sagt, quote ich mal gar nichts :-)
"Habgierig" heißt auf englisch "greedy". Das ist exakt der Begriff, der für das von Dir beschriebene Verhalten benutzt wird. Jetzt mußt Du eigentlich nur noch in
perldoc perlre
nach "greedy" suchen, um zur Lösung des Problems zu kommen... nämlich zum '?'. Streng genommen stand die Antwort also schon in Deiner Frage, nämlich ganz am Ende derselben ;-)
Cheatah
Hi,
Cheatah, du bist nicht zufaellig auch im DNRC ?
Ciao,
Wolfgang
Hi Wolfgang,
Cheatah, du bist nicht zufaellig auch im DNRC ?
ich muß gestehen, daß mir diese Abkürzung nicht geläufig ist, deswegen unterstelle ich einfach mal, daß ich es nicht bin :-)
Cheatah
Hi,
Cheatah, du bist nicht zufaellig auch im DNRC ?
ich muß gestehen, daß mir diese Abkürzung nicht geläufig ist, deswegen unterstelle ich einfach mal, daß ich es nicht bin :-)
Hehehehe..Dogberts New Ruling Class
schau mal bei http://www.dilbert.com nach :)
Ciao,
Wolfgang