Android解析引用字符串

时间:2014-12-23 00:28:47

标签: java android string parsing

这应该是一个非常简单的问题,但我感到困惑,有些东西不能正常工作。

我想解析输入字符串以替换“with [5178]和'with [5179]哪个效果很好,我得到的字符串就像我想要的那样,但当我走另一条路时,我想解析[ 5178]到“和[5179]到',我得到一些奇怪的东西。

这是我的代码:

    text = text.replaceAll("[5178]","\"");
    text = text.replaceAll("[5179]","\'");

那部分不起作用,这部分确实:

    text = text.replaceAll("\"","[5178]");
    text = text.replaceAll("\'","[5179]"); 

当我输入文字时,让我们说:Single quote ' and double quote "我得到:Single quote [5179] and double quote [5178],但当我走另一条路时,我得到Single quote ["""'] and double quote [""""]

我不知道发生了什么,有什么想法吗?

1 个答案:

答案 0 :(得分:3)

replaceAll使用正则表达式作为其第一个参数。 []用于分隔正则表达式中的character class,因此需要进行转义

text = text.replaceAll("\\[5178\\]","\"");

或者你可以使用

text = text.replaceAll(Pattern.quote("[5178]"), "\"");