Hallo Dax,
vielleicht liegt es auch nur daran, dass ich in diesem Fall nicht mehr \\1 verwenden darf, um mit dem Match zu arbeiten. Ich zeige mal die gesamte Zeile:
Code:
$code = preg_replace('#\{([a-z0-9\-_]*?)\}#is', "\$this->_tpldata['.'][0]['\\1']", $code);
Auf alle Faelle wird bei deiner Loesung leider auch das "<!-- IF " als Match erkannt und deshalb verwendet

Hast du vielleicht sonst noch irgendwelche Vorschlaege?
Greetz
alcaeus