通过org.jsoup.nodes.Document对带标签文本进行处理

先准备好待处理的标签文本,以下是我的演示样例。

eee


/xxxxxx/201912/20191205/2019120515755358409796689.jpg2




/xxxxxxxx/201912/20191205/2019120515755358646384020.jpg



①将本文转化为Document对象

通过org.jsoup.nodes.Document对带标签文本进行处理_第1张图片

这里我使用变量s来接收

String s = "带处理文本";

Jsoup提供了很多方法,我这里选择Jsoup.parse(s),大家可以根据实际需求选择。

Document document = Jsoup.parse(s);

②选择要处理的标签

通过第一步我们已经获取到了Document对象,接下来就是解析标签了。

这里以为例:

Document document = Jsoup.parse(s);
Elements es = document.select("img");
System.out.println(es.size());
for(Element element:es) {
	  System.out.println(element);
 }

运行结果: 

可以看到我们拿到了所有标签 。

③获取、修改、移除标签中的属性

可以通过以下代码获取标签中的所有属性:

Attributes  as = element.attributes();

返回的是标签中的所有属性集合

假设我们想获取src的值,在②步骤中的遍历中添加如下代码:

element.attr("src");

结果:

也可以使用通过以下方式:

Attributes  as = element.attributes();
System.out.println(as.get("src"));

如果我们想替换src的值应该如何操作呢?

也很简单只需要使用如下代码:

element.attr("src", "aaaaaaaaa");

第一个参数是选择你带替换的属性名,第二个要替换的值

我这里选择了第一个标签进行替换

结果:

 移除指定属性:

element.removeAttr("uploadpic");

结果: 

可以看到uploadpic这个属性已经不在了

④删除指定标签,输出处理之后的结果

Document document = Jsoup.parse(html);//html指代需要处理的内容
Element element = document.selectFirst("img");//获取第一个img标签元素
element.remove(); //移除
String result = document.selectFirst("body").html();

 

 

你可能感兴趣的:(积累)