У меня есть система CMS, которая позволяет людям также использовать HTML-код, но в конце функции предоставляется nl2br
, что делает это:
<ul>
<li></li>
</ul>
в следующее:
<ul><br/>
<li></li><br/>
</ul>
Теперь я хочу удалить эти <br/>
, которые существуют между <ul>
тегами.
Я уже нашел другой вопрос, который задает почти то же самое, но для новых строк.Я интегрировал это в свою CMS, но для одного клиента все содержимое уже заполнено, поэтому я должен исправить это после замены \n
на <br/>
.
другой вопрос предоставляет это как регулярное выражение для совпадения \n
в пределах <ul></ul>
:
/(?<=<ul>|<\/li>)\s*?(?=<\/ul>|<li>)/is
Я бы подумал что-то вроде этого:
/(?<=<ul>|<\/li>)(<br>|<br\/>|<br \/>)(?=<\/ul>|<li>)/is
Сделал бытрюк, но это не так.Чего мне не хватает?
РЕДАКТИРОВАТЬ
Я очень открыт для решений DOMDocument, если есть способ запроса разрывов строк с помощью xpath, это, вероятно, решит мою проблему.*