Java String replaceAll ()

Metóda Java String replaceAll () nahradí každý podreťazec, ktorý sa zhoduje s regulárnym výrazom reťazca v zadanom texte.

Syntax replaceAll()metódy je:

 string.replaceAll(String regex, String replacement)

Reťazec je tu predmetom Stringtriedy.

Parametre replaceAll ()

replaceAll()Metóda má dva parametre.

  • regex - regex (môže to byť typický reťazec), ktorý sa má nahradiť
  • replacement - zodpovedajúce podreťazce sa nahradia týmto reťazcom

návratová hodnota replaceAll ()

  • replaceAll()Metóda vracia nový reťazec, kde každý výskyt zodpovedajúce čiastkového nahradený s náhradné reťazec.

Príklad 1: Java String replaceAll ()

 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 @ ) )

Vo vyššie uvedenom príklade "\d+"je to regulárny výraz, ktorý sa zhoduje s jednou alebo viacerými číslicami. Ak sa chcete dozvedieť viac, navštívte Java regex.

Unikajúce znaky v znaku replaceAll ()

replaceAll()Metóda môže trvať regex alebo typický reťazec ako prvý argument. Je to preto, lebo typickým reťazcom je sám o sebe regex.

V regulárnom výraze existujú znaky, ktoré majú osobitný význam. Tieto metaznaky sú:

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

Ak potrebujete zosúladiť podreťazec obsahujúci tieto metaznaky, môžete týmto znakom uniknúť pomocou metódy alebo použiť túto replace()metódu.

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

Ako vidíte, pri použití tejto replace()metódy nemusíme uniknúť metaznakom. Ak sa chcete dozvedieť viac, navštívte stránku: Java String replace ()

Ak potrebujete nahradiť iba prvý výskyt vyhovujúceho podreťazca, použite metódu Java String replaceFirst ().

Zaujímavé články...