dis stringescapeutils.escapehtml(string)也逃脱了$符号



我想逃脱$符号以及其他字符,例如'<','>'等。如果没有,我该如何逃脱?

看起来像是否。您可以使用此代码尝试:

StringEscapeUtils.escapeHtml("<b>Hello, World!</b>$")

输出

&lt;b&gt;Hello, World!&lt;/b&gt;$

我测试了Commons-Text 1.1的以下测试,Commons-lang 3弃用StringEscapeUtils

public static void main(String[] args)
{
    System.out.println(StringEscapeUtils.escapeHtml4("$ % > < = #"));
}

输出$ % &gt; &lt; = #

它不会开箱即用,但是Commons-Text中的新utils使用户可以扩展它。阅读本文以获取示例。这是一个小的,但文章显示了更高级的可能性:

Map<CharSequence, CharSequence> added = new HashMap<>();
added.put("$", "foo");
System.out.println(StringEscapeUtils.ESCAPE_HTML4
                                    .with(new LookupTranslator(added))
                                    .translate("$ % > < = #"));

输出foo % &gt; &lt; = #

最新更新