Iaminsane
17.04.2013 - 19:44
доброго времени суток всем. нужна помощь в замене вхождений подстроки, а именно их нужно заменять на разные replacement-ы: паттерн один, замены - две. если вхождение четно - на одно, нечетно - на другое.
наверно, вопрос глупый, но я сам не смог найти ответа на него.
preg_match($pattern, $str, $match);
if(count($match[1])%2)
else
Iaminsane
17.04.2013 - 20:20
rooor, спасибо за ответ, но
1) вхождение четно/нечетно должно быть по номеру (1, 2, 3, 4 ...)
2) подстрока - не число и не один символ
1) не понял... число либо чётно, либо не четно, проверяется количество совпадений, причём тут 1234?
2) тоже не понял, это к чему?
Placido
17.04.2013 - 21:06
чтобы дать внятный ответ, нужно видеть реальный пример - строка, паттерн, какая замена при каком условии. Сразу напрашивается функция preg_replace_callback() и статическая переменная, если я правильно понял:
echo preg_replace_callback($pattern, function(){
static $i=0;
$i++;
return $i%2 ? $replacement_1 : $replacement_2;
}, $string);
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.