Usted puede utilizar el método de la clase String
replaceAll
.
Puede formar una clase de caracteres que consta de los caracteres que desea eliminar. Y la cadena de reemplazo estará vacía, cadena ""
.
Pero los caracteres que desea eliminar que pondrá en la clase de caracteres podrían ser metacaracteres de expresiones regulares y, por lo tanto, deben escaparse. Puedes escaparte manualmente como muestran muchas respuestas, o puedes usar el método Pattern.quote()
.
String charToDel = ">[],-";
String pat = "[" + Pattern.quote(charToDel) + "]";
String str = "a>b[c]d,e-f";
str = str.replaceAll(pat,"");
See it
Bueno, se podría utilizar expresiones regulares, pero entonces tendría que escapar caracteres especiales. ¿Y de qué tipo de eficiencia estás hablando? Tiempo de ejecución o tuyo (es decir, líneas de código)? –
Preocuparse por la "eficiencia" de este problema en particular indica una optimización prematura; Dudo mucho que * este * método sea el cuello de botella de su aplicación. Por favor, tómese su tiempo para descubrir dónde está * realmente * lenta su aplicación y necesita optimización. – Bombe