Я хочу, чтобы теги, содержащие весь заглавный текст, были выделены жирным шрифтом.
этот код делает только первое слово.
$mystring = '<span> BLABLABLA BLA BLA </span><span>bla bla blabla</span><div>bla bla</div>';
preg_replace("/<span>([A-Z]{2,})*/", "<b>\\1</b></span>",$mystring);
благодарю вас
я хочу результат как <span><b> BLABLABLA BLA BLA </b></span><span>bla bla blabla</span>
нет: в исходных строках слишком много html-тегов
Вот ваше решение:
$myString = '<span> BLABLABLA BLA BLA </span><span>bla bla blabla</span><div>bla bla</div>';
$myString = preg_replace("/<span>([A-Z\s]+)<\/span>/", "<span><b>\\1</b></span>",$myString);
echo $myString;
будет соответствовать каждому слову и будет выводить
<span><b> BLABLABLA BLA BLA </b></span><span>bla bla blabla</span><div>bla bla</div>
Пытаться :
preg_replace("~<span>([A-Z\s]+)</span>~","<span><b>$1</b></span>","<span>HELLO WORLD</span>");
Это выведет:
<span><b>HELLO WORLD</b></span>