我正在尝试使用此代码完全从
HTML元素中清除我的文本:
Jsoup.clean(preparedText,Whitelist.none())
不幸的是它没有删除& nbsp;元素.我认为它将用空格替换它,就像它取代& middot一样;带有中间点(“·”).
解决方法
从
Jsoup docs:
Whitelists define what HTML (elements and attributes) to allow through
the cleaner. Everything else is removed.
因此白名单只关注标签和属性. &安培; NBSP;既不是标签也不是属性.它只是一个特殊字符的html编码.如果您想从编码转换为普通文本,您可以使用例如优秀的apache commons lang library或使用Jsoup unescapeEntities method:
System.out.println(Parser.unescapeEntities(doc.toString(),false));
附录:
来自& middot的翻译;在解析html时已经发生了“·”.它似乎与清洁方法无关.