Conozco dos formas de reemplazar todas las apariciones de subcadenas en una cadena.Reemplazar todas las apariciones de subcadena en una cadena, ¿qué es más eficiente en Java?
La forma de expresiones regulares (asumiendo "-subcadena-a-ser reemplazado" no incluye caracteres especiales de expresiones regulares):
String regex = "substring-to-be-replaced" + "+";
Pattern scriptPattern = Pattern.compile(regex);
Matcher matcher = scriptPattern.matcher(originalstring);
newstring = matcher.replaceAll("replacement-substring");
El String.replace() así:
newstring = originalstring.replace("substring-to-be-replaced", "replacement-substring");
Qué de los dos es más eficiente (y por qué)?
¿Existen formas más eficaces que las dos anteriores?
¿Qué quiere decir por eficiente? Menos drenaje de memoria? Menos tiempo de procesador? –
Teniendo en cuenta que 'regex' funcionaría en' substring-to-be-replace + ', que solo permite múltiples' d's al final, ni siquiera se acercan a la misma cosa. –
@Vladimir Ivanov Más rápido. –