如何使用JavaScript正则表达式删除标记

hoj*_*oju 1 html javascript regex parsing

我有一个包含HTML的JavaScript字符串,如下所示:

<div>
 <div class="a">
  content1
 </div>
 content 2
 <div class="a">
  <b>content 3</b>
 </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我想删除class ="a"的div,但保留其内容.在Python中我会使用类似的东西:

re.compile('<div class="a">(.*?)</div>', re.DOTALL).sub(r'\1', html)
Run Code Online (Sandbox Code Playgroud)

使用Javascript正则表达式的等价物是什么?

Tat*_*nen 5

为什么不使用正确的DOM方法?在jQuery的帮助下,这很简单:

var contents = $('<div><div class="a">content1</div>content 2<div class="a"><b>content 3</b></div></div>');

contents.find('.a').each(function() {
    $(this).replaceWith($(this).html());
});
Run Code Online (Sandbox Code Playgroud)