Java String replaceAll ()

Методът Java String replaceAll () замества всеки подниз, който съответства на регулярния израз на низа с посочения текст.

Синтаксисът на replaceAll()метода е:

 string.replaceAll(String regex, String replacement)

Тук низът е обект на Stringкласа.

replaceAll () Параметри

В replaceAll()метода се извършва по два параметъра.

  • regex - регулярно изражение (може да бъде типичен низ), което трябва да бъде заменено
  • заместване - съвпадащите поднизове се заменят с този низ

replaceAll () Върната стойност

  • В replaceAll()метода връща нова поредица, където всяка поява на съвпадение поднизът се заменя с подмяна низ.

Пример 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 @ ) )

В горния пример "\d+"е регулярен израз, който съвпада с една или повече цифри. За да научите повече, посетете Java regex.

Избягващи символи в 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 = "\+"; // 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 ) )

Както можете да видите, когато използваме replace()метода, не е необходимо да избягваме метасимволите. За да научите повече, посетете: Java String replace ()

Ако трябва да замените само първата поява на съответстващия подниз, използвайте метода Java String replaceFirst ().

Интересни статии...