我想删除标签之间的所有内容.输入的示例可以是
输入:
<body>
start
<div>
delete from below
<div class="XYZ">
first div having this class
<div>
waste
</div>
<div class="XYZ">
second div having this class
</div>
waste
</div>
delete till above
</div>
<div>
this will also remain
</div>
end
</body>
Run Code Online (Sandbox Code Playgroud)
输出将是:
<body>
start
<div>
delete from below
delete till above
</div>
<div>
this will also remain
</div>
end
</body>
Run Code Online (Sandbox Code Playgroud)
基本上,我必须删除第一次出现的整个块 <div class="XYZ">
谢谢,
oll*_*llo 15
您最好迭代找到的所有元素.所以你可以这样
例:
Document doc = ...
for( Element element : doc.select("div.XYZ") )
{
element.remove();
}
Run Code Online (Sandbox Code Playgroud)
编辑:
(我的评论的补充)
在此处进行简单的零/范围检查时,请勿使用异常处理:
doc.select("div.XYZ").first().remove();
Run Code Online (Sandbox Code Playgroud)
代替:
Elements divs = doc.select("div.XYZ");
if( !divs.isEmpty() )
{
/*
* Here it's safe to call 'first()' since there at least one element.
*/
}
Run Code Online (Sandbox Code Playgroud)