Доброго времени суток имеется текст следующего вида:
Цитата |
text text %# text text text %# text text text %# text |
Цитата |
text text %1# text text text %2# text text text %3# text |
$string = 'text text %# text text text %# text text text %# text';
$count = substr_count($string, '%#');
for($i = 1; $i <= $count; ++$i) {
$string = preg_replace ('/%#/', "%$i#", $string, 1);
}
echo $string;
$str = "text text %# text text text %# text text text %# text";
$match = preg_split("#%#", $str);
$str = null;
$i = 0;
foreach($match as $key=>$value)
$str .= "%".$i++.$value;
echo substr($str, 2);
$str = 'text text %# text text text %# text text text %# text';
echo preg_replace_callback('/%#/', create_function('', 'static $i = 1; return "%" . $i++ . "#";'), $str);
echo preg_replace_callback('/%#/', function(){ static $i = 1; return '%' . $i++ . '#';}, $str);