获取元素的文本而不包含带有jsoup的子元素的文本

时间:2014-11-05 19:05:33

标签: css-selectors jsoup

我正在使用jsoup来解析HTML。列表项看起来像这样:

<li><span class="chk">X</span>Category Name</li>

我想得到的文字不包括跨度文本。所以我想得到没有“X”的“类别名称”。 (如果我在li元素上调用text()方法,我会得到“XCategory Name”。)如何排除子跨度?

1 个答案:

答案 0 :(得分:4)

ownText()方法可以帮助您。

Document document = Jsoup.parse("<ul><li><span class=\"chk\">X</span>Home</li><li><spanclass=\"chk\">X</span>Category Name</li></ul>");
Elements elems = document.select("li");
for(Element elem : elems){
    System.out.println(elem.ownText());
}