English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمات Java الأساسية

تحكم في العملية Java

مجموعة Java

Java موجه بالأوject (I)

Java موجه بالأوject (II)

Java موجه بالأوject (III)

معالجة الاستثناء Java

قائمة Java (List)

مجموعة Queue Java

مجموعة Map Java

مجموعة Set Java

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

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

طرق Java String (النص)

Java String replaceAll()方法用指定的文本替换与字符串的正则表达式匹配的每个子字符串。

replaceAll()方法的语法为:

string.replaceAll(String regex, String replacement)

replaceAll()参数

replaceAll()方法有两个参数。

  • regex - 要替换的正则表达式(可以是典型的字符串)

  • replacement - 匹配的子字符串被替换为该字符串

replaceAll()返回值

  • replaceAll()方法返回一个新字符串,其中每次匹配子字符串的出现都替换为替换字符串(replacement)。

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

class Main {
    public static void main(String[] args) {
        String str1 = "aabbaaac";
        String str2 = "Learn223Java55@";
        // 表示数字序列的正则表达式
        String regex = "\\d+";
        // 所有出现的“aa”都换成“zz”
        System.out.println(str1.replaceAll("aa", "zz")); // zzbbzzac
        // 用空格替换数字或数字序列
        System.out.println(str2.replaceAll(regex, " ")); // Learn Java @
    }
}

"\\d+" 是一个匹配一个或多个数字的正则表达式。

在replaceAll()中转义字符

replaceAll()方法可以采用一个正则表达式或一个典型字符串作为第一个参数。这是因为一个典型的字符串本身就是一个正则表达式。

在正则表达式中,有些字符具有特殊含义。这些元字符是:

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

如果需要匹配包含这些元字符的子字符串,则可以使用\或使用replace()方法对这些字符进行转义。

// 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
    }
}

كما ترون، عند استخدام طريقة replace()، لا نحتاج إلى إزالة الحروف المضادة. للحصول على مزيد من المعلومات، يرجى زيارة:Java String replace()

إذا كنت بحاجة إلى استبدال فقط أول تطابق للفرع الم匹配، استخدمJava String replaceFirst()الطريقة.

طرق Java String (النص)