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

 

posted @ 2018-10-26 09:13  __NaCl  阅读(19015)  评论(0编辑  收藏  举报