Mailinglisten-Archive |
> Wenn ich einen String $s wie "abcd a4534d abcdd" habe und darin alle
> Vorkommen von "a([^ ])d" finden möchte, mache ich das mit
> eregi("a([^ ]*)d", $s, $matching);
> Das klappt auch in sofern, dass ich in $matching[0] den kompletten,
> passenden String finde und in $matching[1] den Inhalt der ersten Klammer.
> Da ich mit potentiell n-maligem Auftreten der Klammer rechne, kann ich z.B.
> nicht nach "a([^ ])d a([^ ])d a([^ ])d a([^ ])d" suchen.
> Kann mir jemand veraten, wie ich das hinbekomme, dass ich eine Scheife
> solange durchlaufe, bis kein passendes Element mehr gefunden wird und
> solange jeweils das nächste passende Element geliefert bekomme?
>
> Ein mehrmaliges Aufrufen von eregi liefert einfach jeweils wieder das erste
> Auftreten im String $s und nicht das jeweils nächste. Habe ich einen
> grundsätzlichen Denkfehler drin? Ich vermute fast ...
preg_match_all() heißt dein Fruund!
--
Sebastian Mendel (www.sebastianmendel.de)
*www.warzonez.de* | www.tekkno4u.de | www.nofetish.com
php::bar PHP Wiki - Listenarchive