Подскажите, как удалить при помощи php вложенные html-теги strong
Сейчас имеем такую строку:
<strong>
Жил старик со своею старухой <strong>У самого синего моря</strong> Они жили в ветхой землянке Ровно тридцать лет и три года.
</strong>
Нужно привести её к такому виду:
<strong>
Жил старик со своею старухой У самого синего моря Они жили в ветхой землянке Ровно тридцать лет и три года.
</strong>
Организовать поиск строк между тегами <strong>
и </strong>
, а далее можно удалять либо все теги (например, с помощью strip_tags()), либо только необходимые <strong>
и </strong>
:
$str = '<strong>
Жил старик со своею старухой <strong>У самого синего моря</strong> Они жили в ветхой землянке Ровно тридцать лет и три года.
</strong>';
$str = preg_replace_callback(
'~(?<=<strong>)(.+)(?=</strong>)~s',
function($a) { return preg_replace('~</?strong>~', '', $a[0]); },
$str
);
echo $str;
Результат:
<strong>
Жил старик со своею старухой У самого синего моря Они жили в ветхой землянке Ровно тридцать лет и три года.
</strong>
Есть еще такой вариант
$text = "<strong>Жил старик со своею старухой <strong>У самого синего моря</strong> Они жили в ветхой землянке Ровно тридцать лет и три года.
</strong>";
// удаляет любые теги
$result = '<strong>'. preg_replace('/<(.*?)>|<\/(.*?)>/i', '', $text) .'</strong>';
echo $result;
// удаляет только теги <strong>
$result = '<strong>'. str_ireplace('<strong>', '', str_ireplace('</strong>', '', $text)) .'</strong>';
echo $result;
Еще вариант с использованием strip_tags()
:
echo preg_replace_callback('~<strong>\K(.+)(?=</strong>)~is', function($m) {
return strip_tags($m[1]);
}, $string);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Интересует как запустить выполнения функции паралельно внутри другой функцииЕсли я захожу на ссылку site
Попытаюсь изложить максимально понятнее, чем в заголовке) В общем подключил самый простой обработчик на сайт, но возникли некоторые трудностиКогда...
Массив $arrtxt сравнивается по значению с массивом $new по ключу который также содержит в себе массив с ключами и после рандомно выводится рядом...
Использую codeigniter 3И мне нужно сделать отправку с формы смс на почту @gmail