Я хочу заменить все разрывы строк (<br> или <br />) в строке на PHP. Какое регулярное выражение мне нужно сделать, используя preg_replace?
<br>
<br />
Спасибо!
Заменить |<br\s*/?>|i на "строку".
|<br\s*/?>|i
(Обратите внимание, что вы не можете анализировать HTML с регулярным выражением даже для <br /> - например, что если этот <br /> является частью строки в некотором встроенном Javascript? Используйте синтаксический анализатор для получения надежного результата.)
/<br[^>]*>/
Должен делать ... и обрабатывает <br clear="all"> тоже. (Если это не является обязательным требованием, вместо этого используйте решение KennyTM . Во всех случаях следует прочитать его заявление об отказе.)
<br clear="all">
отметьте это, если это поможет, пожалуйста, напишите обратно, если есть какие-либо проблемы.
$str = 'This is a test string<br>.and another string <br>that will replace<br> with <br />'; $pattern = "/<br>/"; $replace = "<br />"; echo preg_replace($pattern, $replace, $str);
Edit:
$string = str_replace(array('<br>','<br />'),'', $string);
Ох, регулярное выражение не идеальный инструмент для всего
Так что, если вы решите, что настаивать на использовании preg_replace больше не имеет смысла, вы можете использовать это
preg_replace