replaceFirst()
方法的语法是
string.replaceFirst(String regex, String replacement)
这里,string是String
类的一个对象。
replaceFirst() 参数
replaceFirst()
方法接受两个参数。
- regex - 要替换的正则表达式(可以是普通的 字符串)
- replacement - 第一个匹配的子字符串将被此字符串替换
replaceFirst() 返回值
replaceFirst()
方法返回一个新字符串,其中匹配子字符串的第一个出现被替换为replacement字符串。
示例 1:Java String replaceFirst()
class Main {
public static void main(String[] args) {
String str1 = "aabbaaac";
String str2 = "Learn223Java55@";
// regex for sequence of digits
String regex = "\\d+";
// the first occurrence of "aa" is replaced with "zz"
System.out.println(str1.replaceFirst("aa", "zz")); // zzbbaaac
// replace the first sequence of digits with a whitespace
System.out.println(str2.replaceFirst(regex, " ")); // Learn Java55@
}
}
在上面的示例中,"\\d+"
是一个匹配数字序列的正则表达式。
在replaceFirst()中转义字符
replaceFirst()
方法可以将正则表达式或普通字符串作为第一个参数。这是因为普通字符串本身就是一个正则表达式。
在正则表达式中,有一些字符具有特殊含义。这些元字符是
\ ^ $ . | ? * + {} [] ()
如果你需要匹配包含这些元字符的子字符串,你可以使用\
来转义这些字符。
// Program to the first + character
class Main {
public static void main(String[] args) {
String str = "a+a-++b";
// replace the first "+" with "#"
System.out.println(str.replaceFirst("\\+", "#")); // a#a-++b
}
}
另请阅读
- Java String replaceAll() - 替换正则表达式匹配的每个子字符串
- Java String replace() - 替换字符串中匹配的每个字符出现