Dennis: Funktionsübergabe in preg_replace

Beitrag lesen

Hi Schorsch,

preg_replace("#{function:(.+?)}#se", '$1', $str);

Probiers mal so:

// Sub-RegEx für Funktionsname  
$funcname = "([^(])+";  
// Sub-RegEx für Funktionsargumente  
$variable = "\{([^)*)\}";  
// RegEx zusammenbasteln  
$regex = "#\{function:$funcname\($variable\)\}#se";  
// Ersatz  
$replace = '$1($my[\'$2\')';  
// Ausführen...  
preg_replace($regex, $replace, $string);

Habs nicht getestet, aber so ungefähr könnte es gehen.

MfG, Dennis.

--
Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:| mo:} zu:|
Die Stoßstange ist aller Laster Anfang! (Häfft)