替換字串的部分
兩種替換方法:通過正規表示式或完全匹配。
注意: 原始的 String 物件將保持不變,返回值包含已更改的 String。
完全符合
用另一個單個字元替換單個字元:
String replace(char oldChar, char newChar)
返回一個新字串,該字串是使用 newChar 替換此字串中出現的所有 oldChar。
String s = "popcorn";
System.out.println(s.replace('p','W'));
結果:
WoWcorn
用另一個字元序列替換字元序列:
String replace(CharSequence target, CharSequence replacement)
將此字串中與文字目標序列匹配的每個子字串替換為指定的文字替換序列。
String s = "metal petal et al.";
System.out.println(s.replace("etal","etallica"));
結果:
metallica petallica et al.
正規表示式
注意 :分組使用 $
字元來引用組,例如 $1
。
替換所有匹配:
String replaceAll(String regex, String replacement)
將給定替換的給定正規表示式匹配的此字串的每個子字串替換。
String s = "spiral metal petal et al.";
System.out.println(s.replaceAll("(\\w*etal)","$1lica"));
結果:
spiral metallica petallica et al.
僅替換第一個匹配:
String replaceFirst(String regex, String replacement)
將給定替換的給定正規表示式匹配的此字串的第一個子字串替換
String s = "spiral metal petal et al.";
System.out.println(s.replaceAll("(\\w*etal)","$1lica"));
結果:
spiral metallica petal et al.