2

いくつかのHTMLタグを新しい行に置き換える必要があります。たとえば、サンプルコードにあるpタグです。

String html = "<p>Zeile1</p><p>Zeile2</p><p>Zeile3</p><p>Zeile4</p>";
Document doc = Jsoup.parse(html);
doc.select("p").append("\\n");
String sanitized = doc.text().replaceAll("\\\\n", System.getProperty("line.separator");
System.out.println(sanitized);

出力は次のとおりです。

Zeile1
 Zeile2
 Zeile3
 Zeile4

ご覧のとおり、2〜4行目にスペースがあります。それらはどこから来て、どうすればそれらを取り除くことができますか?

4

1 に答える 1

3

@bdares の提案と同様に、要素を反復処理できます。

String html = "<p>Zeile1</p><p>Zeile2</p><p>Zeile3</p><p>Zeile4</p>";
Document doc = Jsoup.parse(html);
StringBuilder b = new StringBuilder();
for (Element p : doc.select("p")) {
    b.append(p.text());
    b.append(System.getProperty("line.separator"));
}
System.out.println(b.toString());

出力:

Zeile1
Zeile2
Zeile3
Zeile4
于 2012-04-16T13:07:09.037 に答える