我有一个带有HTML格式化文本的字符串(不是整个网页)。
如何使用Jsoup获取特定标记后的所有HTML内容?
更具凝聚力。假设我有以下字符串:
String input = "<div>a</div><p>b</p><strong>c</strong>";
我想得到:
String output = "<p>b</p><strong>c</strong>";
因此我正在做
Document doc = Jsoup.parseBodyFragment(input); // parse
Element p = doc.select("p"); // select p
我很难确定如何输出p之后的内容。为简单起见,假设p是唯一的。
另一个输入/输出(如问):
String input = "<br /><strong>a</strong><strong>b</strong><p>c</p><div>d</div><br />";
String output = "<p>c</p><div>d</div><br />";
提前谢谢。
答案 0 :(得分:4)
这里有一些代码 - 希望它对你有所帮助:
String input = "<div>a</div><p>b</p><strong>c</strong>";
Document doc = Jsoup.parse(input);
Elements elements = doc.select("p ~ *");
Elements group = new Elements();
group.add(elements.first().previousElementSibling());
for( Element element : elements )
{
group.add(element);
}
// You can work with 'group' too
String output = group.toString();
<强>输出:强>
示例1:
<p>b</p>
<strong>c</strong>
示例2:
<p>c</p>
<div>
d
</div>
<br />