81,092
社区成员
发帖
与我相关
我的任务
分享
//把字符串s中所有的子串s1 替换为s2
public static String Replace(String s, String s1, String s2) {
if (s == null) { //s为null,结束
return null;
}
StringBuffer stringbuffer = new StringBuffer(); //保存处理的中间结果
int i = s.length();
int j = s1.length();
int k; //从位置k开始查找子串s1的位置
int l;//l表示子串s1的开始位置
//从k为0开始查找子串s1的位置,
for (k = 0; (l = s.indexOf(s1, k)) >= 0; k = l + j) {
stringbuffer.append(s.substring(k, l));//保留从k开始的子串s1之前的子串
stringbuffer.append(s2);//替换为s2
}
//s中仍有剩余的子串,直接加入到stringbuffer
if (k < i) {
stringbuffer.append(s.substring(k));
}
return stringbuffer.toString();
}