java在安卓中使用jsoup删除html实体
我使用jsoup来抓取HTML。我在从以下类型的html标记中提取信息时遇到问题:
<span class="some">‭‭78‬‬</span>
应该只是
<span class="some">78</span>
如何从字符串中删除HTML实体
你可以在下面搜索框中键入要查询的问题!
我使用jsoup来抓取HTML。我在从以下类型的html标记中提取信息时遇到问题:
<span class="some">‭‭78‬‬</span>
应该只是
<span class="some">78</span>
如何从字符串中删除HTML实体
# 1 楼答案
我不熟悉jsoup,但如果它是一个“正常”的HTMLDOM解析器,返回一个“标准”的HTMLDOM,那么你想要的就不可能了。问题是,一旦构建了DOM,它就无法区分正常编码的字符和表示为实体的字符
例如:
<span>A</span>
和<span>A</span>
被认为是完全相同的,在DOM中一次也无法区分——这两个元素都是span
元素,包含一个带有文本A
的文本节点因此,您可以在所有文本节点上循环搜索并替换这些字符(而不是实体):
如果需要区分原始字符和实体,则需要使用不同的非DOM(例如基于事件的)HTML解析器