我想删除标签之间的所有内容。输入示例可能是
输入:
<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>
输出将是:
<body>
start
<div>
delete from below
delete till above
</div>
<div>
this will also remain
</div>
end
</body>
基本上,我必须先删除整个区块 <div class="XYZ">
谢谢,
您最好对找到的 所有 元素进行迭代。所以你可以保证
例:
Document doc = ...
for( Element element : doc.select("div.XYZ") )
{
element.remove();
}
编辑:
(除了我的评论)
当简单的 null /范围检查 在这里足够时,请不要使用异常处理:
doc.select("div.XYZ").first().remove();
代替:
Elements divs = doc.select("div.XYZ");
if( !divs.isEmpty() )
{
/*
* Here it's safe to call 'first()' since there at least one element.
*/
}
什么是正确的方法来删除只有HTML标签(保留所有自定义/未知的标签)与JSOUP(不是正则表达式)? 预期输入: 预期产出: 我尝试使用白名单清洁剂。none(),但它也会删除自定义标记。 我也尝试过: 但是它也删除了自定义标签。 这个答案对我不好,因为自定义标记的数量是无限的。
我试图从这些div标签中获取文本,但是它们都不返回任何内容: HTML: 我想得到div类“消息”和h4标记和跨越“日期时间”中的文本,我试图: 和: 但是他们没有成功。
我实际上正在用Java开发一个文本解析器,有人要求我通过用它解析HTML来增强它。解析器的目的是将被解析的文件分成另外三个文件,一个包含文件中包含的所有单词,一个包括所有句子,另一个包含所有问题。 *.txt部分工作得很好,但我在解析HTML时遇到了一个问题。 我创建了一个扩展名为*.txt的临时文件,并将其在我的文本解析器中传递,但是如果我传递一个带有HTML文件链接的URL,其格式如下所示:
我使用JSoup解析字符串,其中包含超文本标记语言标记为纯文本。例如: 它可以很好地解析它,但问题是我的Java字符串是否包含
我必须解析一些html并移除锚标记,但我需要保留锚标记的innerHTML 例如,如果我的html文本是: 现在我可以解析上面的html并在jsoup中选择如下所示的标记, 我可以通过, 但是它会从开始括号到结束括号删除完整的achor标记,并且内部html会丢失,如何才能保留只删除开始和结束标记的内部html。 另外,请注意:我知道有从元素中获取outerHTML()和innerHTML()的方
我正在尝试解析