Перейти к содержимому

Фотография
- - - - -

Регулярка, замена ВСЕХ вхождений по типу str_ireplace


  • Вы не можете создать новую тему
  • Закрытая тема Тема закрыта
В теме одно сообщение

#1 root_x

root_x

    Прохожий

    Топикстартер
  • Участник
  • 0
    17 сообщ.

Отправлено 26 Апрель 2017 в 05:49

Нужно заменить все элементы <b> на [b] , но не во всем тексте а в вв-теге(ах)

 

Я домучился до такого

    $reg = '#(\[CODE\])([\s|\S]*)(\<b\>)([\s|\S]*)(\[\/CODE\])#i';

    $subst = '$1$2[b]$4$5';
    $str = preg_replace($reg, $subst, $str);

, но оно меняет только одно вхождение и думаю что возможно регулярка не правильная, хоть она и меняет одно вхождение.

И было бы оч.хорошо если бы в одной регулярке менялись все <b> и </b> на [b] и [\b] в вв-теге [code=auto:0].

Так можно сделать?

И было бы оч.хорошо если бы в одной регулярке менялись все <b> и </b> на [b] и [\b] в вв-теге [code=auto:0].

соdе без auto:0

---

И было бы оч.хорошо если бы в одной регулярке менялись все <b> и </b> на [b] и [\b] в вв-теге [соdе]


Сообщение отредактировал root_x: 26 Апрель 2017 в 05:23

  • 0

Спонсор

#2 BaNru

BaNru

    Пацифизжу

  • суперМодератор
  • 1010
    3 657 сообщ.

Отправлено 27 Апрель 2017 в 21:23

Разбей на два действия. Сначала получи всё что коде. А потом работай с получившимся. Так у тебя будет проще регулярки и ты сможешь за меньшие действия заменять сразу B, I, и другие.
  • 0



Похожие темы Свернуть

Статистика

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей