我不能让replace / replaceAll工作

时间:2013-11-28 04:03:00

标签: java string replace replaceall

我需要显示应该显示的数据库中的数据:

in the html: Behälter
in the browser: Behälter

但相反,我得到了这样的数据:

in the html: Behälter
in the browser: Behälter

所以我需要将&更改回&。我使用Java的String类中的replaceAll和replace方法。但它没有用。我甚至检查字符串是否有&或者不使用indexOf方法,但它似乎甚至没有捕获甚至看到&符号。

我的代码:

// supposed the value returned by the getObject function is "Behälter"
String text = (String)getObject("value");

if (text.indexOf("&") >= 0) text = "abc" + text;

text = text.replace("&", "&");
text = text.replaceAll("&", "&");

if (text.indexOf("&") >= 0) text = text + "def";
text = text + "xyz";

结果是

in the html: Behälterxyz
in the browser: Behälterxyz

我输入和使用replace / replaceAll有什么问题吗?谢谢你的回答。

1 个答案:

答案 0 :(得分:1)

我建议将Apache Commons Lang用于StringEscapeUtils.unescapeHtml()。

用编码的字符输入你的字符串,它应该把它吐出来解码。