Java String replaceAll ()

El método Java String replaceAll () reemplaza cada subcadena que coincide con la expresión regular de la cadena con el texto especificado.

La sintaxis del replaceAll()método es:

 string.replaceAll(String regex, String replacement)

Aquí, la cadena es un objeto de la Stringclase.

Parámetros de replaceAll ()

El replaceAll()método toma dos parámetros.

  • regex : una expresión regular (puede ser una cadena típica) que se debe reemplazar
  • reemplazo : las subcadenas coincidentes se reemplazan con esta cadena

replaceAll () Valor devuelto

  • El replaceAll()método devuelve una nueva cadena donde cada aparición de la subcadena coincidente se reemplaza con la cadena de reemplazo .

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

En el ejemplo anterior, "\d+"es una expresión regular que coincide con uno o más dígitos. Para obtener más información, visite Java regex.

Caracteres de escape en replaceAll ()

El replaceAll()método puede tomar una expresión regular o una cadena típica como primer argumento. Es porque una cadena típica en sí misma es una expresión regular.

En expresiones regulares, hay caracteres que tienen un significado especial. Estos metacaracteres son:

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

Si necesita hacer coincidir la subcadena que contiene estos metacaracteres, puede escapar estos caracteres usando o usar el replace()método.

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

Como puede ver, cuando usamos el replace()método, no necesitamos escapar de los metacaracteres. Para obtener más información, visite: Java String replace ()

Si necesita reemplazar solo la primera aparición de la subcadena coincidente, use el método Java String replaceFirst ().

Articulos interesantes...