Forum Webscript.Ru
Программирование => PHP => Тема начата: CLiI{er от 04 Января 2002, 17:09:31
-
Допустим, для обработки текста используется следующий код:
$msg = eregi_replace("\\[img\\]([^\\[]*)\\[/img\\]","\\\\1",$msg);
Можно ли отправить \\\\1 в другую функцию? Пробовал так:
$msg = eregi_replace("\\[img\\]([^\\[]*)\\[/img\\]",func("\\\\1"),$msg);
Код работает неправильно. В функцию приходит строка \\1 (или 1, если без кавычек), а не найденное eregi_replace\'ом значение. Подскажите, может существует другое решение.
PHP/4.0.8-dev
-
Если я правильно понял, то нужно использовать preg_replase() и директиву e вставлять
Вот пример:
function break_long_words($source_text,$lng)
{
$regExp=\'/(\\S{\'.$lng.\',})/ei\';
$res_text=preg_replace($regExp,"wordwrap(\'\\\\1\',$lng,\'\\n\',1)",$source_text);
return $res_text;
}
-
Нужно было найти текст внутри тега img и
отправить найденный текст на дальнейшую обработку.
Решил задачу при помощи preg_match_all.