Mailinglisten-Archive |
>~<gcms:loop>(((?>[^<>]+)|(?R))*)</gcms:loop>~ Das kommt dem Problem schon um einiges näher. Ich hatte heute auch Philip Hazel kontaktiert und er hatte einen ähnlichen Ausdruck: <gcms:loop[^>]*> ( (?>[^<>]+) | (?R) )* </gcms:loop> Also im Grunde genommen genau dasselbe :) Nur schrieb er auch, das man da keine <> tags dazwischen haben kann. Und das brauche ich schon. Die Tags werden ja in normalen HTML Code eingebaut Hier ein Teil der Email von Philip Hazel (Entwickler von PCRE) -- You want . instead of matching ( to match <gmcs:loop> . instead of matching "not ()" to match "not <>" // Das stimmt so nicht // "not ()" to match "not <gcms:loop></gcms:loop>" . instead of matching ) to match </gcms:loop> That assumes that there aren't going to be any other tags nested inside. Let's try: <gcms:loop[^>]*> ( (?>[^<>]+) | (?R) )* </gcms:loop> That seems to work in a quick test. If you want to allow other tags inside, it will be trickier, and I don't think I've got time at the moment to work though it. I suspect you'll need a third branch in the middle, and then that will get even more complicated if those tags can nest... -- Jaa - das hört sich kompliziert an - aber es muss doch irgendwie gehen. Wäre wirklich super wenn ihr mir da helfen könnt - in diversen Boards, Newsgroups, Mailinglisten konnte bis jetzt noch keine Lösung gefunden werden. Grüsse, Nikolai -- http://www.chordinversion.com
php::bar PHP Wiki - Listenarchive