嗨,我有一个包含字段$ id的字符串(将XML转换为字符串)因为XML不接受“ symbol,所以我无法解析它。我正在寻找一个用id替换$ id的选项。但是下面的代码没有给我所需的结果:-
OrigString是XML。 ReplaceString包含:-$ id NewString包含:-id
用OrigString中的id替换$ id。
public String StringReplace(String OrigString,String ReplaceString,String NewString) {
String str2 = OrigString.replaceAll(ReplaceString, NewString);
return str2;
}
谢谢
答案 0 :(得分:0)
$是正则表达式中的特殊符号,因此您需要像这样\\ $进行转义,并在java字符串中确保您也对斜杠进行转义并使它\\ $像这样尝试,
OrigString.replaceAll("\\$id", "id");
或者不使用replaceAll,而是使用replace方法,该方法不会将您的字符串视为正则表达式,因此可以安全地使用它,
String s = "$id hello $id";
System.out.println("Before: " + s);
System.out.println("After: " + s.replace("$id", "id"));
此输出
Before: $id hello $id
After: id hello id