0

我有一个像这样的字符串= ["41020834846 - Yan Oda 1" 。我想["用replaceAll删除字符串开头的()。

所以我该怎么做?

我试过 replaceAll("[\"", "")了,但没有奏效。

4

6 回答 6

4

改用就好replace("[\"", "")了。

replaceAll(...)用于正则表达式匹配。如果你想用 replaceAll 来做,你需要转义[正则表达式中使用的符号:

replaceAll("\\[\"", "")

如果字符串总是在开头完全一样,只需执行以下操作:

.substring(2);
于 2012-12-26T12:08:55.367 回答
1

试试下面的代码。

String test = "[\"41020834846 - Yan Oda 1";
Log.i("======= Replace String"," :: "+test.replace("[\"", ""));

输出- 41020834846 - Yan Oda 1

于 2012-12-26T12:11:08.733 回答
1

您可以使用子字符串方法:

String str = "[\"41020834846 - Yan Oda 1";
str = str.substring(2);
// OR
// str = str.substring(2, str.length());
于 2012-12-26T12:11:17.673 回答
1

您需要拥有,replaceAll("\[\"", "")因为它[是正则表达式语法的一部分,从而使您为您的案例输入无效的正则表达式。

如果您经常使用文本,也可以使用 Apache Commons StringUitls 或 Guava 之一。例如,使用 StringUtils 有StringUtils#remove(str,remove),例如:

 StringUtils.remove("queued", "ue") = "qd"
于 2012-12-26T12:12:18.003 回答
0

你不应该使用

replaceAll();

而不是这个,使用

replace();

方法。另一种方法是使用字符串类方法。

祝你好运!

于 2012-12-28T08:58:39.240 回答
-2

试试看 :

 String example = "["41020834846 - Yan Oda 1";
    String pattern = "^(\[\")";
    example = example.replaceAll(pattern,""));
于 2012-12-26T12:18:08.943 回答