English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
El método replaceAll() de String en Java reemplaza cada subcadena que coincide con la expresión regular de la cadena con el texto especificado.
La sintaxis del método replaceAll() es:
string.replaceAll(String regex, String replacement)
El método replaceAll() tiene dos parámetros.
regex - Expresión regular para reemplazar (puede ser una cadena típica)
replacement - El subcadena coincidente se reemplaza con esta cadena
El método replaceAll() devuelve una nueva cadena en la que cada aparición del subcadena coincidente se reemplaza con la cadena de reemplazo (replacement).
class Main { public static void main(String[] args) { String str1 = "aabbaaac"; String str2 = "Learn223Java55@"; //Expresión regular que representa una secuencia de números String regex = "\\d+"; //Reemplazar todas las apariciones de "aa" con "zz" System.out.println(str1.replaceAll("aa", "zz")); // zzbbzzac //Reemplazar números o secuencias de números con espacios System.out.println(str2.replaceAll(regex, " ")); // Aprende Java @ {} {}
En el ejemplo anterior, "\\d+" es una expresión regular que coincide con uno o más dígitos.
El método replaceAll() puede usar una expresión regular o una cadena típica como primer parámetro. Esto se debe a que una cadena típica en sí misma es una expresión regular.
En las expresiones regulares, algunos caracteres tienen un significado especial. Estos caracteres meta son:
\ ^ $ . | ? * + {} [] ()
Si necesita coincidir subcadenas que contienen estos caracteres meta, puede usar \ o utilizar el método replace() para escapar estos caracteres.
// Programa para reemplazar el + character class Main { public static void main(String[] args) { String str1 = "+a-+b"; String str2 = "Learn223Java55@"; String regex = "\\+"; // 将+" 替换"#" 使用 replaceAll()方法 ////使用replaceAll()将“ +”替换为“#” System.out.println(str1.replaceAll("\\+","#", // #a-#b // 替换+" 为 "#" 使用 replace() System.out.println(str1.replace("+","#", // #a-#b {} {}
正如您看到的,当我们使用replace()方法时,我们不需要转义元字符。要了解更多信息,请访问:Java String replace()
如果只需要替换匹配子字符串的第一个匹配项,请使用Java String replaceFirst()方法。