Java中的replace()函数

Java的中的replace() replaceAll() replaceFirst()都是用于字符串替换的函数。作用分别如下:

(1)replace()

函数原型:replace(CharSequence target, CharSequence replacement)  用replacement替换掉target。这两个参数都是字符串

实例:

public class TryDotRegEx{
    public static void main(String args[]){
        String ss="aaabbbbccaadd";
        ss=ss.replace("aa","00");
        System.out.println(ss);
    }
}
输出:00abbbbcc00dd

最普通的字符串替换函数

(2) replaceAll()

函数原型:replaceAll(String regex, String replacement) 用replacement所有regex匹配的字符串。很明显regex参数是个正则匹配式,replacement是个字符串。

实例:

public class TryDotRegEx{
    public static void main(String args[]){
        String ss="abac";
        ss=ss.replaceAll("a(\w)","$1$1");
        System.out.println(ss);
    }
}
//bbcc
这里将a替换成a紧跟的下一个字符创

在第二个参数中“$” 是用来获取分组内容的"$1"表示获取第一个分组。其中分组的意思的正则表达式里面有多少个()这个。分别以1-9表示。很显然上文的例子的正则表达式只有一个。

(3)replaceFirst

函数原型:

replaceFirst(String regex, String replacement),基本和replaceAll相同,区别是只替换第一个匹配项。

实例

public class TryDotRegEx{
    public static void main(String args[]){
        String ss="abacabac";
        ss=ss.replaceFirst("a(\w)","$1$1");
        System.out.println(ss);
    }
}

输出:bbacabac

带转义字符的匹配。如果我们要将a替换成a。那么在replaceAll和replaceFirst()函数中。第二个参数要写成"\\a" 这样才是替换成a

原文地址:https://www.cnblogs.com/NaCl/p/9854457.html