用Jsoup解析html并删除某些样式的跨度

Sam*_*uel 3 html java android jsoup

我正在为朋友写一个应用程序,但我遇到了一个问题,网站有这些

<span style="display:none">&amp;0000000000000217000000</span>
Run Code Online (Sandbox Code Playgroud)

我们甚至不知道它们是什么,但我需要删除它们,因为我的应用程序正在输出它们的值.

有什么方法可以检查这是否在元素中并删除它?我有一个for-each循环解析但是我无法弄清楚如何有效地删除这个元素.

谢谢

小智 8

如果要完全根据样式属性删除这些跨度,请尝试以下代码:

String html = "<span style=\"display:none\">&amp;0000000000000217000000</span>";
html += "<span style=\"display:none\">&amp;1111111111111111111111111</span>";
html += "<p>Test paragraph should not be removed</p>";

Document doc = Jsoup.parse(html);

doc.select("span[style*=display:none]").remove();

System.out.println(doc);
Run Code Online (Sandbox Code Playgroud)

这是输出:

<html>
 <head></head>
 <body>
  <p>Test paragraph should not be removed</p>
 </body>
</html>
Run Code Online (Sandbox Code Playgroud)