Задать вопрос
@User782
Кратко о себе

Как заменить только в тегах p?

Как сделать замену только в тегах p?
И если есть в тегах p например другой тег a, то не заменить внутри тега a
например заменить 123 на qwe:
<div>123</div>
<p>123</p>
<p>123<a href="/123">123</a></p>

нужно чтобы осталось:
<div>123</div>
<p>qwe</p>
<p>qwe<a href="/123">123</a></p>

Спасибо
  • Вопрос задан
  • 81 просмотр
Подписаться 1 Средний 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
@alekcena
Нелинейный наставник
Вынести это в отдельную переменную и добавлять её только в голые теги p?
$str = "Ваш текст";

<p><?=$str?></p>
Ответ написан
Комментировать
rozhnev
@rozhnev Куратор тега PHP
Fullstack programmer, DBA, медленно, дорого
Используйте preg_replace:

echo preg_replace('/<p>[^<]+</', '<p>qwe<',  '<div>123</div>');
echo PHP_EOL;

echo preg_replace('/<p>[^<]+</', '<p>qwe<',  '<p>123</p>');
echo PHP_EOL;

echo preg_replace('/<p>[^<]+</', '<p>qwe<',  '<p>123<a href="/123">123</a></p>');
echo PHP_EOL;


PHP preg_replace online
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы