Mailinglisten-Archive |
Am 11.04.02 10:31:08, schrieb "Till" <phpcenter.de_(at)_klimpong.com>: >Hi Michael! >>> $pattern = '=^(.*)<a(.*)href\="?(\S+)"([^>]*)>(.*)</a>(.*)$=msi'; >>> while (preg_match($pattern, $zeile, $txt)) >>> { >>> tue dies und tue das >>> } >Ich glaube ich nehm dann einfach das Stueck "(\S+)"([^>]*)" mir >heraus, oder? Och nö, lass mal drin. >Kannst Du mir vielleicht noch sagen was das genau tut? >Ich wuerde das gern verstehen, Ich auch, deswegen habe ich die URL mit angegeben. RegExp sind auch nicht mein Ding. Zumindest soviel kann ich Dir sagen: ?(/S+)""([^>]*) /S heisst, dass nach dem Gleichzeichen alles kommen darf ausser einem Whitespace (Leerzeichen, Tab). Beim Fragezeichen rätsle ich auch denn: Das ? steht eigentlich für die Elimnierung der Klammer, scheint aber hier die Wiederholung des letzten Ausdrucks zu sein, der vor dem href steht: Die Bedingung trifft auf 1 Zeichen zu. Die nächste Bedingung, eingeleitet mit der ( besagt, dass als nächstes Zeichen KEIN > kommen darf, dass wird durch das ^(Dach) angezeigt. Sondern alles andere, bis man zu einem > kommt. Vielleicht erbarmt sich einer der regexp Profis und klamüsert den String auseinander (wenn Sie sich vom Lachanfall erholt hat). Irgendwie vermute ich ganz grossen Mist geschrieben zu haben :-) Michael
php::bar PHP Wiki - Listenarchive