Java streng erstatte alle ()

Metoden Java String erstatteAlle () erstatter hver understreng, der matcher regex for strengen med den angivne tekst.

Metodens syntaks replaceAll()er:

 string.replaceAll(String regex, String replacement)

Her er streng et objekt i Stringklassen.

Erstat alle () parametre

Den replaceAll()metode tager to parametre.

  • regex - en regex (kan være en typisk streng), der skal udskiftes
  • udskiftning - matchende underlag erstattes med denne streng

erstatteAll () Return Value

  • Den replaceAll()metode returnerer en ny streng, hvor hver forekomst af den matchende delstreng erstattes med udskiftning streng.

Eksempel 1: Java String erstatte alle ()

 class Main ( public static void main(String() args) ( String str1 = "aabbaaac"; String str2 = "Learn223Java55@"; // regex for sequence of digits String regex = "\d+"; // all occurrences of "aa" is replaceAll with "zz" System.out.println(str1.replaceAll("aa", "zz")); // zzbbzzac // replace a digit or sequence of digits with a whitespace System.out.println(str2.replaceAll(regex, " ")); // Learn Java @ ) )

I ovenstående eksempel "\d+"er der et regulært udtryk, der matcher et eller flere cifre. For at lære mere, besøg Java regex.

Undslippe tegn i erstatningAlle ()

Den replaceAll()metode kan tage en regex eller en typisk streng som det første argument. Det er fordi en typisk streng i sig selv er en regex.

I regex er der tegn, der har særlig betydning. Disse metategn er:

 $. | ? * + () () ()

Hvis du har brug for at matche substring, der indeholder disse metategn, kan du enten undslippe disse tegn ved hjælp af eller bruge replace()metoden.

 // Program to replace the + character class Main ( public static void main(String() args) ( String str1 = "+a-+b"; String str2 = "Learn223Java55@"; String regex = "\+"; // replace "+" with "#" using replaceAll() // need to espace "+" System.out.println(str1.replaceAll("\+", "#")); // #a-#b // replace "+" with "#" using replace() System.out.println(str1.replace("+", "#")); // #a-#b ) )

Som du kan se, når vi bruger replace()metoden, behøver vi ikke undslippe metategn. For at lære mere, besøg: Java String erstatte ()

Hvis du kun skal udskifte den første forekomst af den matchende understreng, skal du bruge metoden Java String replaceFirst ().

Interessante artikler...