0
的我有这样jsoup提取所有标签之间的文本,除了一个类型的子标签
<p>
<i>One</i> - <i>Two</i> - ... <i>N</i> -
<tag1>hey</tag1> <tag2>there!</tag2> how are you?
</p>
的HTML代码,我想有hey there! how are you?
。
这是我设法到目前为止是:
Elements p = document.select("p");
List<Node> nodes = p.get(0).childNodes();
for (Node node : nodes){
if (node.nodeName() != "i"){
if (node.nodeName() != "#text"){
System.out.print(((Element) node).text());
} else {
System.out.print(node);
}
}
}
这是我得到:
- - hey there! how are you?
在那之后,我计划用.replace()
摆脱了“ - ”。
我想知道是否有更好的方法?
编辑版本的重要性在于要排除的文本元素的_all_前面有一个''标签。那是对的吗? –
要排除的文本元素都是“ smth - ”模式:) – NoSmile
它只显示“there!”。没关系,我会留在我的方法,直到有一个改进:) – NoSmile