【问题标题】:unicode value not being replacedunicode 值没有被替换
【发布时间】:2013-07-17 00:41:44
【问题描述】:

我正在尝试替换字符串中的一个字符。我正在接收来自 JSON 调用的字符串。当我使用以下方法调试导致我的问题的相关字符时:

char chr = stringValue.charAt(1);

我得到的值为 12。我对此进行了研究,它告诉我使用 unicode 值进行替换,如下所示:

stringValue.replaceAll('\u0012','');

但是这不起作用。我也尝试用以下值替换,但没有一个有效:

"\\u0012", "\f", "\\f", "\\p{C}", "\u0160", "\\u0160", "[^\\x00-\\x7F]"

如果有人能帮我解决这个问题,那就太好了

【问题讨论】:

标签: java unicode replace playframework


【解决方案1】:

replaceAll 方法不会修改字符串。它返回一个字符已被替换的新字符串,所以你需要的是:

stringValue=stringValue.replaceAll("\u000c","");

请注意,如果您要替换的字符的十进制代码为 12,则必须将其转换为十六进制。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-15
    • 2013-08-08
    • 1970-01-01
    • 1970-01-01
    • 2021-08-06
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多