Ciąg Java ReplaceAll ()

Metoda Java String replaceAll () zastępuje każdy podciąg pasujący do wyrażenia regularnego ciągu określonym tekstem.

Składnia replaceAll()metody to:

 string.replaceAll(String regex, String replacement)

Tutaj string jest obiektem Stringklasy.

replaceAll () Parametry

replaceAll()Sposób dwa parametry.

  • regex - wyrażenie regularne (może być typowym ciągiem znaków), które ma zostać zastąpione
  • zamiana - pasujące podciągi są zastępowane tym łańcuchem

replaceAll () Wartość zwracana

  • replaceAll()Metoda zwraca nowy ciąg, gdzie każde wystąpienie podciągu pasującego jest zastępowany zastępczej ciąg.

Przykład 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 @ ) )

W powyższym przykładzie "\d+"jest wyrażeniem regularnym, które dopasowuje jedną lub więcej cyfr. Aby dowiedzieć się więcej, odwiedź Java regex.

Escaping Characters w replaceAll ()

replaceAll()Metoda może regex lub typowy ciąg jako pierwszy argument. Dzieje się tak, ponieważ typowy ciąg sam w sobie jest wyrażeniem regularnym.

W wyrażeniu regularnym są znaki, które mają specjalne znaczenie. Te metaznaki to:

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

Jeśli chcesz dopasować podciąg zawierający te metaznaki, możesz zmienić znaczenie tych znaków używając lub użyć replace()metody.

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

Jak widać, kiedy używamy replace()metody, nie musimy uciekać od metaznaków. Aby dowiedzieć się więcej, odwiedź: Java String replace ()

Jeśli chcesz zamienić tylko pierwsze wystąpienie pasującego podciągu, użyj metody Java String replaceFirst ().

Interesujące artykuły...