[РЕДАКТИРОВАТЬ] Прежде всего: Я знаю, что с помощью инструментов манипулирования DOM вы можете легко изменять структуры DOM.(Они доступны в любом браузере и даже в Node сторонними библиотеками.)
Цель его вопроса состоит в том, может ли кто-нибудь придумать умную идею, если эта проблема может быть решенаот Regexp в JavaScript без DOM.
Спасибо! [Конец редактирования]
Допустим, у меня есть следующий HTML-фрагмент в виде строки :
<p>
<div class="something">
<span>
<div class="else">My precious text.</div>
</span>
</div>
</p>
Я хочу избавиться от тегов <div class="something">
с помощью RegExp , чтобы получить что-то подобное (отступ не имеет значения):
<p>
<span>
<div class="else">My precious text.</div>
</span>
</p>
Итак, моя попытка была:
htmlString.replace(/<div class="something">([\s\S]+?)<\/div>/gi, "$1");
Но она, конечно, будет соответствовать закрывающему тегу <div class="else">
.
Как я могу сделать это правильно, используя только ванильJS и не использует инструменты манипулирования DOM браузера?(т.е. в узле)