我使用 Jsoup 从网络获取元素:
Elements addresses = doc.select("address > div");
结果是这样的:
<address>
<div>
7135 S Kingery Hwy<br>Willowbrook, IL 60527
</div>
<div class="phone">
(630) 288-6635
</div>
</address>
我很难从标签中检索地址。我使用 text() 方法:
for (Element address : addresses) {
Log.i("addresses", address.text() );
}
结果是:
7135 S Kingery Hwy Willowbrook, IL 60527
(630) 288-6635
如何过滤它以仅检索地址并用换行符替换 br 标记?预期结果:
7135 S Kingery Hwy
Willowbrook, IL 60527
最佳答案
你可以试试这个,
Elements addresses = doc.select("address > :not(div[class=phone])");
for (Element address : addresses) {
for (Node node : address.childNodes()) {
if (node.nodeName().equals("br")) {
continue;
}
String text = node.toString().trim();
System.out.println(text);
}
}
关于java - 如何使用 Jsoup 从标签元素中检索字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14078363/