PreshkaНу, во первых, надо экранировать слэши в регулярном выражение,
во вторых, в массиве $replaceper1 не должны содержатся слэши в начале и в конце, т.к. это не регулярное выражение.
Вот так код работает:
$text = '';
$pregper1[0] = "/echo = '(.*?)<form(.*?)>(.*?)<\/form>/";
$pregper1[1] = "/'.(.*?).'/";
$pregper1[2] = "/no/";
$pregper1[3] = "/'.(.*?).'/";
$pregper1[4] = "/'.(.*?).'/";
$replaceper1[0] = '?>$1<form$2>$3<\/form>';
$replaceper1[1] = '<?=|$|(.*?);?>';
$replaceper1[2] = 'yes';
$replaceper1[3] = '<?=|$|(.*?);?>';
$replaceper1[4] = '<?=|$|(.*?);?>';
$text = preg_replace ($pregper1, $replaceper1, $text);
$text = '';
$pregper1 = array (
"/echo = '(.*?)<form(.*?)>(.*?)<\/form>/",
"/'.(.*?).'/",
"/no/",
"/'.(.*?).'/"
);
$replaceper1 = array (
'?>$1<form$2>$3<\/form>',
'<?=|$|(.*?);?>',
'yes',
'<?=|$|(.*?);?>'
);
$text = preg_replace ($pregper1, $replaceper1, $text);
_____________
Мой блог