js正则替换标签内的内容?

例如这段代码:

<div class="nav">
    <div id="demo">
        <p>这是一段文字</p>
        <span>这是一段文字</span>
        <div class="list">这是一段文字</div>
    </div>
 </div>

我想通过正则把<div id="demo"></div>里面的内容替换为空,请问如何实现?先谢谢各位了,麻烦帮帮忙

阅读 4.3k
3 个回答

这个使用 DOMParser 解析比较方便

const html = `
<div class="nav">
  <div id="demo">
    <p>这是一段文字</p>
    <span>这是一段文字</span>
    <div class="list">这是一段文字</div>
  </div>
</div>
`

const parser = new DOMParser()
const doc = parser.parseFromString(html, 'text/html')
doc.querySelector('#demo').innerHTML = null
console.debug(doc.querySelector('.nav').outerHTML)

可以直接innerHTML=''";真要正则的话/^<div>[</div>]$/g.replace($0,"")

这样算大炮打蚊子吧

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题