替换 Java 字符串中的子字符串


假设我们有以下字符串。

String str = "The Walking Dead!";

我们想将子字符串“死亡”替换为“活着”。为此,让我们使用以下逻辑。在此,我们使用了一个 while 循环,并且找到了要替换的子字符串的索引。通过这种方式,我们可以逐个替换整个子字符串。

int beginning = 0, index = 0;
StringBuffer strBuffer = new StringBuffer();
while ((index = str.indexOf(subStr1, beginning)) >= 0) {
   strBuffer.append(str.substring(beginning, index));
   strBuffer.append(subStr2);
   beginning = index + subStr1.length();
}

以下替换子字符串的完整示例。

示例

 在线演示

public class Demo {
   public static void main(String[] args) {
      String str = "The Walking Dead!";
      System.out.println("String: "+str);
      String subStr1 = "Dead";
      String subStr2 = "Alive";
      int beginning = 0, index = 0;
      StringBuffer strBuffer = new StringBuffer();
      while ((index = str.indexOf(subStr1, beginning)) >= 0) {
         strBuffer.append(str.substring(beginning, index));
         strBuffer.append(subStr2);
         beginning = index + subStr1.length();
      }
      strBuffer.append(str.substring(beginning));
      System.out.println("String after replacing substring "+subStr1+" with "+ subStr2 +" = "+strBuffer.toString());
   }
}

输出

String: The Walking Dead!
String after replacing substring Dead with Alive = The Walking Alive!

更新时间:2020-06-25

122 浏览

开启您的职业生涯

通过完成课程获得认证

入门
广告
© . All rights reserved.