使用Jsoup在html标签之后获取文本并显示结果

时间:2014-07-03 09:10:59

标签: java html html-parsing jsoup

我正在尝试从HTML文档中获取文本

<p>
   <b>1</b>First Text
   <b>2</b><br>Second Text
   <b>3</b>Third Text
   .
   .
   .
   .
</p>

第3行是事情陷入困境

尝试使用以下代码,但发生错误。

Elements elements = doc.body().select("p").select("b");
    for(int i=0; i<elements.size(); i++)
{
        Element val = elements.get(i);

    if ((val.nextSibling().toString().trim()).equals(""))
        System.out.println(val.nextSibling().toString().select("br").first().text()+"\n");
    else
        System.out.println(val.nextSibling().toString()+"\n");

    }

1 个答案:

答案 0 :(得分:0)

问题尚不清楚,但似乎(从标题中)您只想在<b>之后<br>之外的文字。为此,您可以使用ownText()

Elements elements = doc.select("p");
for(Element p: elements) {
    System.out.println(p.ownText()); // Prints text that is in <p> but not in <b>
}