由于用 replaceAll替换时,碰到一些转意字符时容易发生错误,用下面的方法可以解决这个问题。
public static String replace(String mainString, String oldString,
String newString) {
if (mainString == null)
return null;
if (newString == null)
return mainString;
int i = mainString.lastIndexOf(oldString);
if (i < 0)
return mainString;
StringBuffer mainSb = new StringBuffer(mainString);
while (i >= 0) {
mainSb.replace(i, i + oldString.length(), newString);
i = mainString.lastIndexOf(oldString, i - 1);
}
return mainSb.toString();
}