0

我可以看到很多类似的问题,但不完全是。我只想使用 Jsoup 从 DOM 中删除所有非 html 标记数据(纯文本)。结果应该只是没有纯文本的标记。

它是内置的 jsoup 还是我应该编写自己的 regExp ?解析整个 DOM 而不是 RegExp 并删除标签内的内容会更好吗?

如果我必须连续不断地解析大量文档/页面,哪个会更有效?

[已解决] - 请参阅下面的代码(对于我的要求)

public void getNodesHtml(Elements children, Element parent) throws Exception {
    for(Element e : children) {
        String nodeName = e.nodeName();
        String id = e.id().isEmpty() ? "" : e.id();
        parent.append("<" + nodeName + " id=\"" + id + "\"> </" + nodeName + ">");

        Elements subchildren = e.children();
        getNodesHtml(subchildren, e);
    }
}
4

1 回答 1

0
removeText(Element node){

    List<TextNode> textNodes = node.textNodes();

    for(TextNode tn : textNode){
        tn.remove();
    }

    Elements children = node.children();
    for(Element e : Elements)
        removeText(e);
}
于 2012-04-18T05:58:36.193 回答