Servus,
Ich bin gerade dabei für den kleinen Gebrauch eine Template Engine zu schreiben. So langsam aber sicher blicke ich endlich in Sachen RegExp durch. Dennoch stehe ich immer wieder vor kleinen unverständlichkeiten, die ich aber meist durch Google oder Dokumentationen lösen kann.
Nach längerem, erfolglosen Suchen, will ich mich nun mit meinem Problem an euch wenden.
Die Zentrale Frage ist eigentlich...
Kann ich in meinem Platter auf ein bereits gefundes Match zugreifen?
Beispiel:
Das Array dazu:
Array ( [items] => Array ( [0] => Array ( [item1] => Hans [item2] => Mueller ) [1] => Array ( [item1] => Dieter [item2] => Schmidt ) ) )Meine RegExp für preg_replace_callback():
<temp:loop\svalue="(.*)">(.*)<\/temp:loop\svalue="###">
Die drei ### würde ich gerne gegen eine "Variable" für Match 1, also "items" ersetzen. Ansonsten würde bei einer Schleife in der Schleife, diese an falscher stelle beendet.
Ich hoffe ich habe es einigermaßen verständlich umschrieben.
Gruß Markus
Ich bin gerade dabei für den kleinen Gebrauch eine Template Engine zu schreiben. So langsam aber sicher blicke ich endlich in Sachen RegExp durch. Dennoch stehe ich immer wieder vor kleinen unverständlichkeiten, die ich aber meist durch Google oder Dokumentationen lösen kann.
Nach längerem, erfolglosen Suchen, will ich mich nun mit meinem Problem an euch wenden.
Die Zentrale Frage ist eigentlich...
Kann ich in meinem Platter auf ein bereits gefundes Match zugreifen?
Beispiel:
HTML-Code:
<temp:loop value="items"> <temp:loopitem loop="items" value="item1"> <temp:loopitem loop="items" value="iteme2"> </temp:loop value="items">
Array ( [items] => Array ( [0] => Array ( [item1] => Hans [item2] => Mueller ) [1] => Array ( [item1] => Dieter [item2] => Schmidt ) ) )Meine RegExp für preg_replace_callback():
<temp:loop\svalue="(.*)">(.*)<\/temp:loop\svalue="###">
Die drei ### würde ich gerne gegen eine "Variable" für Match 1, also "items" ersetzen. Ansonsten würde bei einer Schleife in der Schleife, diese an falscher stelle beendet.
Ich hoffe ich habe es einigermaßen verständlich umschrieben.
Gruß Markus
Kommentar