Thread Platzhalter für HTML-Ausdrücke (reguläre Ausdrücke)
(47 answers)
Opened by vitopetre at 2010-04-02 09:42 2010-04-05T20:29:23 vitopetreWeil diese Module paraxisorientiert sind und so manche Falle (auch bei seltsamen HTML) umgehen. Quote Du wolltest ja folgenden Regex anwenden: Code (perl): (dl
)
$item=~ m/<a href>(.+)<\/a>/; So klappt das nicht, denn ein .+ bedeutet jedes/oder keines Zeichen merhfach. Damit ist aber auch < gemeint. Was du dachtest und wolltest, wäre eher: Code (perl): (dl
)
$item=~ m/<a href>([^<]+)<\/a>/; Mein obiges Beispiel von HTML ist natürlich nur ein Beispiel, wo es mit Regex Probleme geben kann, sowas in meinem Beispiel tritt nicht so oft auf. Bei den HTML-XML-Parser-Modulen kann es auch passieren, dass er defekten HTML/XML-Code bekommt und sich verschluckt. So ganz ohne Haken ist das also auch nicht. Last edited: 2010-04-06 10:22:09 +0200 (CEST) |