Java 菜鳥教程

Java 流程控制

Java 數(shù)組

Java 面向?qū)ο?I)

Java 面向?qū)ο?II)

Java 面向?qū)ο?III)

Java 異常處理

Java 列表(List)

Java Queue(隊(duì)列)

Java Map集合

Java Set集合

Java 輸入輸出(I/O)

Java Reader/Writer

Java 其他主題

Java String replaceAll() 使用方法及示例

Java String(字符串) 方法

Java String replaceAll()方法用指定的文本替換與字符串的正則表達(dá)式匹配的每個子字符串。

replaceAll()方法的語法為:

string.replaceAll(String regex, String replacement)

replaceAll()參數(shù)

replaceAll()方法有兩個參數(shù)。

  • regex - 要替換的正則表達(dá)式(可以是典型的字符串)

  • replacement - 匹配的子字符串被替換為該字符串

replaceAll()返回值

  • replaceAll()方法返回一個新字符串,其中每次匹配子字符串的出現(xiàn)都替換為替換字符串(replacement)。

示例1:Java 字符串 replaceAll() 方法

class Main {
    public static void main(String[] args) {
        String str1 = "aabbaaac";
        String str2 = "Learn223Java55@";

        //表示數(shù)字序列的正則表達(dá)式
        String regex = "\\d+";

        //所有出現(xiàn)的“aa”都換成“zz”
        System.out.println(str1.replaceAll("aa", "zz")); // zzbbzzac

        //用空格替換數(shù)字或數(shù)字序列
        System.out.println(str2.replaceAll(regex, " ")); // Learn Java @

    }
}

在上面的示例中,"\\d+" 是一個匹配一個或多個數(shù)字的正則表達(dá)式。

在replaceAll()中轉(zhuǎn)義字符

replaceAll()方法可以采用一個正則表達(dá)式或一個典型字符串作為第一個參數(shù)。這是因?yàn)橐粋€典型的字符串本身就是一個正則表達(dá)式。

在正則表達(dá)式中,有些字符具有特殊含義。這些元字符是:

\ ^ $ . | ? * + {} [] ()

如果需要匹配包含這些元字符的子字符串,則可以使用\或使用replace()方法對這些字符進(jìn)行轉(zhuǎn)義。

// Program to replace the + character
class Main {
    public static void main(String[] args) {
        String str1 = "+a-+b";
        String str2 = "Learn223Java55@";
        String regex = "\\+";

        // 將 "+" 替換"#" 使用 replaceAll()方法
        ////使用replaceAll()將“ +”替換為“#”
        System.out.println(str1.replaceAll("\\+", "#")); // #a-#b


        // 替換"+" 為 "#" 使用 replace() 
        System.out.println(str1.replace("+", "#")); // #a-#b
    }
}

正如您看到的,當(dāng)我們使用replace()方法時(shí),我們不需要轉(zhuǎn)義元字符。要了解更多信息,請?jiān)L問:Java String replace()

如果只需要替換匹配子字符串的第一個匹配項(xiàng),請使用Java String replaceFirst()方法。

Java String(字符串) 方法

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清