【发布时间】:2017-03-10 04:01:58
【问题描述】:
我正在尝试删除 javascript 中过多的结束标记以及之后的任何内容。
这是一个可能的示例:
<div class="dummy">
<div class="main">
<div></div>
<img src="a.jpg">
<br>
<img src="b.jpg />
<strong>
<span>text</span>
</strong>
</div>
</div>
***excessive tags below***
</div>
</div>
<div class="footer">
text
</div>
</body>
</html>
关于如何有效地做到这一点的任何想法? 我要提取的部分总是一个 div,但问题是它可能有很多嵌套的 div,我不知道如何处理这种情况。
如果它可以通过多个步骤完成或使用回调也可以,只要它有效。
编辑 我的问题实际上比看起来容易。 该示例始终以我要提取的 div 开头。 所以我只需要找到匹配的结束标签,然后过滤后面的任何内容。 别管其他标签...
【问题讨论】:
-
这是一个了不起的答案:stackoverflow.com/a/1732454/135078
-
正则表达式不是解析工具。
-
您要删除的标签究竟是什么?评论下方过多标签下方的所有内容?保留页脚 div 的两个不匹配的标签?
-
一个更好的问题应该是:有谁知道 HTML 解析器会在最后丢弃不必要的标签?
标签: javascript html regex parsing element