我使用JSOUP过滤链接出html身体。Jsoup选择没有标签的链接
我用这些选择:
Elements links = doc.select("a[href]"); // Select all links
links.select("a[href*=#]").remove(); // remove links containing #
但仍有连接包含一个主题标签。这怎么可能?
我使用JSOUP过滤链接出html身体。Jsoup选择没有标签的链接
我用这些选择:
Elements links = doc.select("a[href]"); // Select all links
links.select("a[href*=#]").remove(); // remove links containing #
但仍有连接包含一个主题标签。这怎么可能?
Elements上的remove()
方法不会从元素本身删除匹配项,而是从关联的Document对象中删除匹配项。
例如,如果您有:
<html>
<body>
<a href="#someid"></a>
<a href="http://www.google.pt"></a>
</body>
</html>
links.select("a[href*=#]").remove();
后,你会:
<html>
<head></head>
<body>
<a href="http://www.google.pt"></a>
</body>
</html>
如果您想选择所有非主题标签的链接,你可以这样做:
Elements links = doc.select("a[href~=[^#]*");
另一种方式将是: Document doc = Jsoup.parse(html); doc.select(“a [href * =#]”)。remove(); \t \t \t元素链接= doc.select(“a [href]”); – pila 2013-02-28 19:46:18
当你说“还有链接”时,你的意思是在元素(这是一个列表本身)还是在文档(doc)对象中? – 2013-02-25 21:20:08
在我的元素集合中有链接包含“#” – pila 2013-02-25 21:24:48