phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?RE:_=5Bphp=5D_Rekursive_Regul=E4re_Ausdr=FCcke?=

[php] RE: [php] Rekursive Reguläre Ausdrücke

Nikolai Onken php_(at)_phpcenter.de
Mon, 22 Jul 2002 11:43:59 +0200


>Ich habe leider noch nicht wirklich viel Erfahrungen mit Regulären
>Ausdrücken. Vielleicht könnt Ihr mich ja ein wenig unterstützen.

Was klappte denn genau nicht?

> Wenn ich das richtig
>verstanden hatte ergab sich das Problem bei Nikolai aus den <> Zeichen.

Bei mir lag - liegt das Problem bei dem Ansatz z.B. mein

<gcms:loop>irgendwas<gcms:loop>noch was</gcms:loop></gcms:loop>

mit EINEM regulären Ausdruck zu lösen. Das scheint zwar zu gehen, ist
aber sehr kompliziert und auch gar nicht sinvoll (Ja - jetzt sage ich
das auch:) da du so z.B. gar keine Fehlerroutine schreiben kannst, wenn
ein Tag einen Fehler hat. Wie weißt du in welcher Zeile/Spalte der
Fehler ist, wenn der Ausdruck einfach nicht matcht?
Ich bin jetzt zu dem Ansatz gekommen, jedes Tag einzeln zu überprüfen,
so weiß man Zeile/Spalte für debugging. Immer wenn das Tag korrekt
geschlossen wird das gesamte Tag (also <gcms:loop>soundso</gcms:loop>)
durch z.B. soundsosoundsosoundso ersetzt.
So kann man auch 'unendlich' tief verschachtelte loops, ifs, elses etc.
machen.
Ich hoffe es ist deutlich, was gemeint ist - wenn nicht, maile ich gerne
mal meinen Code - speedoptimierungen sind herzlichst willkommen :)
Die wichtigste Funktion für die Verschachtelung war array_push und pop
Ach - und so langsam ist der Parser von mir glaube ich auch nicht.
Bei einem einigermaßen komplizierten Template mit viel Text, <gcms:>
Tags und 2 eingebundenen Plugins ohne Caching sind es 0.2 Sekunden (im
Schnitt) - ist das ok?
Gruß,

Nikolai
--
http://www.chordinversion.com


php::bar PHP Wiki   -   Listenarchive