版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
package replaceTest;
public class Replace {
//将字符串中所有的old part替换为new part
/*
* 遍历字符串,
* 判断当前位是否以old part开始,
* 如果不是,将当前位append StringBuilder中
* 如果是,则将new part append StringBuilder中,遍历索引i跳过old part
*/
public static String replace(String str,String oldPart,String newPart) {
StringBuilder sb=new StringBuilder();
for(int i=0;i<str.length();i++) {
if(str.startsWith(oldPart, i)) {
sb.append(newPart);
i+=oldPart.length()-1;
}else {
sb.append(str.charAt(i));
}
}
return sb.toString();
}
}
测试类
import replaceTest.Replace;
public class Test{
public static void main(String[] args) {
run();
}
public static void run() {
String str="abcd123abcd123abcd";
String oldPart="123";
String newPart="efgh";
System.out.println(Replace.replace(str, oldPart, newPart));
}
}
结果
abcdefghabcdefghabcd