Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Замена текста на текст с тегами


Автор: dima_mak 4.6.2010, 01:18
Есть строка типа "выафыва:выааывавыаыва<br>выафыва:выааывавыаыва......"
нужно заменить все ":" на "</span>:" а "<br>" на "<br/><span>", но ничего не получаеться: вот как пробовал:
Код

$skate[techdesc]=preg_replace("/:/", ": </span>",$skate[techdesc]);

не работает, пробовал с str_replace, тоже не меняет. О второй замене, я вообще не говорю....

Автор: ksnk 4.6.2010, 01:46
Цитата(dima_mak @  4.6.2010,  01:18 Найти цитируемый пост)
О второй замене, я вообще не говорю.... 

Код

$skate=" : hello <br>
:erfxkerf <br>";

$skate=preg_replace(array("/:/",'/<br\/?>/i'), array("</span>:",'<br/><span>'),$skate);
echo htmlspecialchars($skate);

Автор: dima_mak 4.6.2010, 02:04
спасибо, но это меняет, только первое найденное, вот текст из переменной до замены:
Код

סגנון   רכיבה מומלץ:פיטנס<br>גלגלים:80/84mm 80a<br>מיסבים: ILQ 7<br>פריים: Hi-Lo Aluminium<br>כאף: Enhanced Stability<br>מגף: רך


а вот после:
Код

סגנון   רכיבה מומלץ</span>:פיטנס<br>גלגלים:80/84mm 80a<br>מיסבים: ILQ 7<br>פריים: Hi-Lo Aluminium<br>כאף: Enhanced Stability<br>מגף: רך

Автор: kal1sha 4.6.2010, 09:03
Вот хороший инструмент для работы с регулярками http://www.regexpr.ru/

Автор: ksnk 4.6.2010, 10:27
а так:
Код

preg_replace(array("/:/u",'/<br\/?>/iu'), array("</span>:",'<br/><span>'),$skate);

в регулярки добавлен модификатор /u

Автор: s0lman 4.6.2010, 11:33
По-моему, здесь проще было бы два раза str_replace использовать, да наверное и быстрее...

Автор: dima_mak 4.6.2010, 11:38
с u результат тот же.
да и с str_replace резкльтат идентичный.

Автор: patap 4.6.2010, 11:47
s0lman действительно дело говорит, исходя из задания регулярки тут пока что никчему
Код

  $subject = 'выа<br>фыва:выааывавыаыва<br>выафыва:выааыв<br>авы:аы:ва.';
  $search = array(':', '<br>');
  $replace = array('</span>:', '<br/><span>');

  echo str_replace($search, $replace, $subject);


Автор: dima_mak 4.6.2010, 11:56
тот же результат

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)