Como remover qualquer caractere especial de uma String?

Olá pessoal,

Existe algum método no JAVA para remover caracteres especiais de um a string ?

Estou recebendo de um script, uma string que contém diversos caracteres de controle ( “/n”,"/t","/r",etc… ).
Após filtrar com essa sequencia, diminuiu bastante, mas ainda não removeu todos :

Total = Total .replaceAll( "\t", "" ); Total = Total .replaceAll( "\n", "" ); Total = Total .replaceAll( "\r", "" );

Alguém pderia dar um palpite ?

+++

  1. O que é “especial” para você?
  2. Você não quer fazer ao contrário - achar uma lista do que você quer em vez de tirar as coisas que você não quer?
Pattern p = Pattern.compile("{cntrl}");
Matcher m = p.matcher("");
m.reset(myString);
String result = m.replaceAll("");

[quote=J.E.Z] Pattern p = Pattern.compile("{cntrl}"); Matcher m = p.matcher(""); m.reset(myString); String result = m.replaceAll("");
[/quote]

Opa…valeu pela dica.
Vou testar e depois atualizo aqui.

Obg.

AT+

Ola!
to to deixando aqui um código com repçaceAll que aceita expressão regular pra ver se ajudo :smiley:

public class RemoveCaracteresEspeciais { public static void main(String[] args){ String text = "ola\ncomo você vai?\n"; text = text.replaceAll("[^a-zZ-Z1-9 ]", ""); System.out.println(text); } }

nesse exemplo ele só aceita caracteres de alfanuméricos mas se sua necessidade for outra é só dar uma pesquisada sobre expressão regular !

até!

1 curtida