HTML 内のすべての PRE タグのコンテンツをエスケープしたいだけです。これを行うために、私は現在、1 つのことを除いて期待どおりに動作している JSoup を使用しています。私が使用している入力文字列の例:
<pre>public List<Article> methodName() {
...
}</pre>
<
したがって、この文字列から、文字と文字を単純にエスケープしたいと思い>
ます。現在、次のように JSoup を使用してこれを行っています (エスケープに Spring HtmlUtils を使用しています)。
Document document = Jsoup.parse(string);
document.outputSettings().prettyPrint(false);
Elements codeTags = document.select("pre");
for (Element codeTag : codeTags) {
codeTag.html(HtmlUtils.htmlEscape(codeTag.html()));
}
<Article>
以下に示すように、テキストを自動変更して「修正」するように見える上記の入力文字列を除いて、これは期待どおりに機能するようです。
<pre>public List<article> methodName() {
...
}</article></pre>
JSoup が HTML を解析していることは理解していますが、これはこの状況で私が望む動作ではありません。JSoup に HTML を自動修正しないように指示するためにできることはありますか? そもそも JSoup を使用する必要がありますか?