Как правильно в Sublime составить комплексное регулярное выражение?

Есть такая разметка с разорванными тегами:

<ul>
< li>цвет: синий< / li>
< li > Материал: ПВХ< / li>
< li>Размер: 80 * 40см< / li>
< li>вес: 123 г< / li>
</ul>

На выходе должно получиться так:

<ul>
<li>Цвет: синий</li>
<li>Материал: ПВХ</li>
<li>Размер: 80 * 40см</li>
<li>Вес: 123 г</li>
</ul>
<h3 class="section-title font-opensans">Puluz PU5201L 80x40см blue - купить< / h3>
< p class="section-content">Купить Фон для предметной съемки Puluz PU5201L 80x40см blue в специализированном магазине фото/видео гаджетов. Официальная гарантия от <a href="http://www.puluz.com/">производителя</a>. Бесплатная доставка. Просмотреть все фото/видео гаджеты: <a href="https://site.com">site.com< / a>< / p>

Нужно убрать все пробелы в открывающем теге, убрать их в закрывающем, убрать слева и справа от тегов. А также заменить строчную первую букву после > на прописную.


Ответы (1 шт):

Автор решения: dIm0n

Найденное этим:

\h*<\h*li\h*>\h*(\p{L})(.*)\h*<\h*\/\h*li\h*>\h*

заменить вот этим:

<li>\U$1\E$2</li>

Тест https://regex101.com/r/IHPAEf/2

<ul>
< li>цвет: синий< / li>
< li > Материал: ПВХ< / li>
< li>Размер: 80 * 40см< / li>
< li>вес: 123 г< / li>
</ul>

станет

<ul>
<li>Цвет: синий</li>
<li>Материал: ПВХ</li>
<li>Размер: 80 * 40см</li>
<li>Вес: 123 г</li>
</ul>

Для любого буквенного тэга найденное этим:

\h*<\h*(\w+)\h*>\h*(\p{L})(.*)\h*<\h*\/\h*\1\h*>\h*

заменить вот этим:

<$1>\U$2\E$3</$1>

Тест https://regex101.com/r/IHPAEf/3/

<ul>
< li>цвет: синий< / li>
< li > Материал: ПВХ< / li>
< li>Размер: 80 * 40см< / li>
< li>вес: 123 г< / li>
< tag> привет мир< /tag>
</ul>

станет

<ul>
<li>Цвет: синий</li>
<li>Материал: ПВХ</li>
<li>Размер: 80 * 40см</li>
<li>Вес: 123 г</li>
<tag>Привет мир</tag>
</ul>
→ Ссылка