[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: вопрос касательно preg_replace()
devoto
Пишу скрипт для вывода комментариев из базы и возник вопрос с заменой смайлов.
В базе смайлы храняться в виде *smile_name*
При выводе комментариев из базы необходимо заменить *smile_name* на
<img src="img/smiles/smile_name.gif alt="smile_name">
, где smile_name - это название смайла. Комментарий может содержать несколько смайлов с разным smile_name
Для замены хотел использовать
preg_replace("/[*]{1}([1-9]{0,1}[a-z]{1,})[*]{1}/", replacement, $text);

вопрос: можно ли в параметре raplacement использовать запомненое совпадение? если да то как?
если нет, то подскажите каким образом можно реализовать эту замену)
DedMorozzz
да, совпадение можно запоминать и как следствие - выводить. Пример :
$a="aaa bbb ccc ddd";
$a=preg_replace('#.*?(b+).*#','$1',$a);
echo $a;//bbb
Т.е. то что в скобках - это первое вхождение. Выводить $номер_вхождения

_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
devoto
Спасибо за помощь smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.