【发布时间】:2016-03-04 09:02:11
【问题描述】:
我想要什么:我是 Jsoup 的新手。我想解析我的 html 字符串并搜索出现在标签(任何标签)内的每个文本值。然后将该文本值更改为其他值。
我做了什么:我能够更改单个标签的文本值。下面是代码:
public static void main(String[] args) {
String html = "<div><p>Test Data</p> <p>HELLO World</p></div>";
Document doc1=Jsoup.parse(html);
Elements ps = doc1.getElementsByTag("p");
for (Element p : ps) {
String pText = p.text();
p.text(base64_Dummy(pText));
}
System.out.println("======================");
String changedHTML=doc1.html();
System.out.println(changedHTML);
}
public static String base64_Dummy(String abc){
return "This is changed text";
}
输出:
======================
<html>
<head></head>
<body>
<div>
<p>This is changed text</p>
<p>This is changed text</p>
</div>
</body>
</html>
上面的代码可以改变p标签的值。但是,在我的情况下,html 字符串可以包含任何标签;我要搜索和更改其值。
如何在 html 字符串中搜索所有标签并一一更改其文本值。
【问题讨论】: