繁体   English   中英

Jsoup选择和替换多个<a>元素</a>

[英]Jsoup selecting and replacing multiple <a> elements

因此,我只是尝试使用Jsoup API,并提出了一个简单的问题。 我有一个字符串,除了通过我的方法时,我想保持字符串完好无损。 我希望字符串通过此方法并取出包装链接的元素。 现在我有:

public class jsTesting {
public static void main(String[] args) {
    String html = "<p>An <a href='http://example.com/'><b>example</b></a> link and after that is a second link called <a href='http://example2.com/'><b>example2</b></a></p>";
    Elements select = Jsoup.parse(html).select("a");
    String linkHref = select.attr("href");
    System.out.println(linkHref);       
}}

这将仅返回未包装的第一个URL。 我希望所有URL和原始字符串都被解包。 提前致谢

编辑:解决方案:

非常感谢您的回答,我只对其进行了少许编辑,以获得所需的结果。 这是我正在使用的完整解决方案:

public class jsTesting {
public static void main(String[] args) {
    String html = "<p>An <a href='http://example.com/'><b>example</b></a> link and after that is a second link called <a href='http://example2.com/'><b>example2</b></a></p>";
    Document doc = Jsoup.parse(html);
    Elements links = doc.select("a[href]");
    for (Element link : links) {
        doc.select("a").unwrap();
    }
    System.out.println(doc.text());
}

}

再次感谢

这是更正的代码:

public class jsTesting {
    public static void main(String[] args) {
        String html = "<p>An <a href='http://example.com/'><b>example</b></a> link and after that is a second link called <a href='http://example2.com/'><b>example2</b></a></p>";
        Elements links = Jsoup.parse(html).select("a[href]"); // a with href;
        for (Element link : links) {
            //Do whatever you want here
            System.out.println("Link Attr : " + link.attr("abs:href"));
            System.out.println("Link Text : " + link.text());    
        }       
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM