Mailinglisten-Archive |
Hi Nikolai, Nikolai Onken schrieb: [schnipp] > Mein Problem ist, das ich diesen Ausdruck umschreiben will, so dass er > z.B. > <gcms:loop>Hallo<gcms:loop>huhu</gcms:loop></gcms:loop> matchen kann. > Und genau da komm ich nicht mehr weiter - wenn es überhaupt möglich ist. > Ich kann ja nicht einfach > °<gcms:loop>(((?>[^<gcms:loop>])|(?R))*)</gcms:loop> schreiben. Das Problem ist [^<gcms:loop>] das entspricht nicht dem was du suchst. Schau dir das mal an, ist zwar noch nicht perfekt aber kommt der Sache schon nah. <?php $content = '<gcms:loop>Mein Problem ist,</gcms:loop> das ich diesen Ausdruck umschreiben will, so dass er z.B. <gcms:loop>Hallo<gcms:loop>huhu</gcms:loop></gcms:loop> matchen kann. Und genau da komm ich nicht mehr weiter - wenn es überhaupt möglich ist. Ich kann ja nicht einfach'; preg_match_all ('~<gcms:loop>(((?>[^<>]+)|(?R))*)</gcms:loop>~U', $content, $treffer); print_r($treffer); ?> [^<>]+ sucht mindestens ein Zeichen was nicht < oder > ist. Das kann natürlich nur gehen solange Zwischen <gcms:loop> und </gcms:loop> kein < oder > vorkommen kann. Ich schau mal ob mir noch was einfällt. Gruß Christian
php::bar PHP Wiki - Listenarchive