LX: preg_match / regex für schweiklammern

Beitrag lesen

Hallo, sunflowa!

Meinetwegen nehmen wir den zweiten Vorschlag, dann ham ma Tags.
Nein, eine komplexe Template-Engine will ich nicht schreiben, ich brauche für ein Projekt eine kleine Template-Klasse mit nen bisschen weniger Code, so um 100 Zeilen.
Ja, die Arbeit kann man sich sparen aber Smarty und Co sind nicht erwünscht und ich muss mir halt selber was zusammenbasteln.
Und das finde ich auch nicht schlimm schlissslich kann man sein Wissenstand ja ausbauen

Ansonsten nur folgender Rat: Du brauchst keine Regexp, sondern einen Parser.
Öhhm, was bringt mir nen Parser :-D
Du kannst wahrscheinlich "auch" nicht wirklich regexen, ich weiss schon was ich will

Ich kann schon mit RegExp umgehen, dazu gehört aber auch, zu wissen, wann man sie besser nicht verwendet. Ein Parser ist ein Programm, welches Daten anhand eines Vokabulars erfaßt, bspw. '1 + 1' als Addition zweier Werte erkennt und daraufhin reagiert. Man kann einen Parser auch mit Regexp realisieren, schränkt sich dabei in der Regel aber ziemlich ein.

Das Problem Deiner Absicht besteht darin, dass Du die Ausdrücke, nach denen Du suchst, kapseln willst. An dieser Stelle steigen Regexp üblicherweise aus. Ich habe Dir ein Vorgehen genannt, mit dem Du weiterkommen würdest, wenn Du es implementierst. Wenn nicht, versuche Dich eben weiter an einer Regexp. Den ersten von Dir genannten Fall kannst Du als Regepx mit "/{([^}]+)}([^{]+){([^}]+)}/" ausdrücken (Wert 1,3 = Variable, Wert 2 = Inhalt). Der zweite Fall wird so aber nicht funktionieren.

Gruß, LX

--
X-Self-Code: sh:( fo:) ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: Unusual
X-Please-Search-Archive-First: Absolutely Yes