选择显示:无Jsoup

时间:2013-05-08 18:29:15

标签: java jsoup

我正在练习JSoup,看看这个神奇的解析器可以做的事情。有一件事我无法解决:

我需要删除display none属性的标签。一个显而易见的方法是使用select:

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

但这不适用于所有情况。有时,在样式标记中,有多个属性,如style =“display:none,width ....”,有时候,还有像style =“display:none;”这样的空格,冒号等。

我尝试通过应用来解决这个问题:

if(!doc.getElementsByAttributeValueContaining("style", "display").isEmpty()){
        if(!doc.getElementsByAttributeValueContaining("style", "none").isEmpty()){

        // Not sure what to remove here.    


        }

    }

完成这项工作的方法应该是什么?

1 个答案:

答案 0 :(得分:3)

您可以为选择器尝试valContaining构造:

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

如果这与您想要的不符,请尝试查看此处的文档以获取更多选项:

http://jsoup.org/apidocs/org/jsoup/select/Selector.html