如何使用Java的String.replaceAll方法替换以$开头的String

时间:2015-06-10 06:36:14

标签: java regex string

以$ char作为第一个参数(即要替换的字符串)的字符串的正确正则表达是什么,以及String类中Java的replaceAll方法?我无法正确使用语法。 实施例

String s = "SUMIF($C$6:$C$475,\"   India - Hyd\",K$6:K$475)";
System.out.println(s.replaceAll("$475", "$44"));

3 个答案:

答案 0 :(得分:7)

我建议您在这种情况下使用replace()代替replaceAll(),因为您没有使用任何正则表达式:

System.out.println(s.replace("$475", "$44"));

答案 1 :(得分:4)

这应该有效:

System.out.println(s.replaceAll("\\$475", "\\$44"));

答案 2 :(得分:1)

string.replace()州的文件

  

public String replace(CharSequence target,                CharSequence替换)

     

替换此字符串中与文字目标匹配的each子字符串   具有指定文字替换序列的序列。

因此,您可以使用replace方法而不是replaceAll。

String s = "SUMIF($C$6:$C$475,\"   India - Hyd\",K$6:K$475)";
System.out.println(s.replace("$475", "$44"));