我有一个标准的json结构,我有这样的内容
<p>
这是html内容<\/p>
我正在使用jsoup去剥离标签。但是我得到的输出如下
这是html内容</p>
Jsoup无法剥离已转义字符的结束标记。
注意:标准的json数据格式会将/
视为特殊字符并将其转义
java中可用的任何标准json库都能做到这一点吗?
答案 0 :(得分:0)
<\/p>
不是有效的结束标记。 Jsoup试图根据W3标准解释HTML。 <p>
元素并不总是需要结束标记。见https://developer.mozilla.org/en-US/docs/Web/HTML/Element/p
由于您没有提供完整的HTML,我无法告诉您HTML是否有效。但是,JSoup还试图充分利用无效的HTML。 (因此库的名称:JSoup,充分利用HTML-Soup)
在任何情况下,如果您在HTML中找到<\/p>
,那么它实际上是有效内容,而不是结束标记,因为正确的结束标记为</p>
所以JSoup所做的就是应该发生的事情。
我想您可能想要分析HTML的来源。它似乎经历了一些改变HTML有效性的处理。我想你应该尝试用原始HTML提供JSoup。
我知道您的HTML是JSON格式字符串的一部分。也许您应该尝试分析如何进一步处理此字符串以再次生成有效的HTML。重复此过程,然后将其提供给JSoup