preg_replace は preg_replace_callback
function fetch_str($source){
$source = $this->smarty_prefilter_preCompile($source);
return preg_replace("/{([^}{n]*) で置き換えられます} /e", "$this->select('\1');", $source);
}
-----ソリューションのアイデア------ - ----------------
return preg_replace_callback("/{([^\}\{\n]*)}/", <br /> function($m) {<br /> return $this->select($m[1]);<br /> }, $source);