Jsoup を使用した改行の保持: 総合ガイド
HTML をプレーン テキストに変換する場合、読みやすさを維持するには改行を保持することが重要です。人気のある Java HTML パーサー ライブラリである Jsoup は、HTML の構造を維持しながら HTML からテキストを抽出する効率的な方法を提供します。
このガイドでは、Jsoup の Jsoup.parse を使用する際の改行の保持に関する具体的な問題について詳しく説明します。 (str).text() メソッド。このメソッドは HTML からテキスト コンテンツを抽出しますが、改行はネイティブに保持されません。
TextNode.getWholeText() の利用
当初、質問は次の可能性を検討していました。 Jsoup の TextNode.getWholeText() メソッドを使用します。ただし、このアプローチは HTML タグのコンテキストで改行を処理しないため、効果がないことが判明しました。
効果的な解決策
改行を保持する解決策は、テキストを抽出する前に HTML コンテンツの前処理と後処理の両方を行う、より包括的なアプローチです。
提示されたコード スニペットは次の手順を実行します。
タグとその前タグ。
実装
<code class="java">public static String br2nl(String html) { if(html==null) return html; Document document = Jsoup.parse(html); document.outputSettings(new Document.OutputSettings().prettyPrint(false));//makes html() preserve linebreaks and spacing document.select("br").append("\n"); document.select("p").prepend("\n\n"); String s = document.html().replaceAll("\\n", "\n"); return Jsoup.clean(s, "", Whitelist.none(), new Document.OutputSettings().prettyPrint(false)); }</code>
満たされた要件
提供されるソリューションは次の要件を満たします。
このソリューションを実装すると、Jsoup を使用して HTML をプレーン テキストに変換するときに改行を効果的に保持できます。正確で読みやすい結果を保証します。
以上がJsoup を使用して HTML をプレーン テキストに変換するときに改行を保持するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。