Forum Webscript.Ru

Программирование => PHP => Тема начата: Alone от 06 Января 2005, 13:53:53

Название: Проблема при работе с preg_replace
Отправлено: Alone от 06 Января 2005, 13:53:53
Версия PHP 4.3.10


Код:
$pattern=array(\'/<-title->/\');
$replacement=array($title);
$data=preg_replace($pattern,$replacement,$data);



Проблема в том что $title может содержать символ $ например "Price: $39.94"
после замены "Title: <-title->" получаем "Title: Price: .94"

делаю так:
$replacement=array( preg_quote( $title ) );

получается:
"Title: Price: $39\\.94";

Немного подумав я понял что мне за глаза хватит str_replace,
но все равно хотелось бы чуть чуть повыше перенести руки и самую малость отрихтовать. :)
Вобщем что я делаю не так?
Название: Проблема при работе с preg_replace
Отправлено: Макс от 06 Января 2005, 15:20:06
Цитировать
Alone:
Проблема в том что $title может содержать символ $ например "Price: $39.94"
насколько я понял, просто одинарные кавычки надо использовать вместо двойных:

echo "Price: $39.94";
echo \'Price: $39.94\';
Название: Проблема при работе с preg_replace
Отправлено: Alone от 06 Января 2005, 15:33:47
$title определяется из файла
я проверял до "$replacement=array($title);" $title содержит нормальную строку например "Price: $39.94".