Remover caracter

6 respostas
M

olá pessoal
tenho um algoritmo que precisa remover caracter especial e grava no banco de dados
vi alguns exemplos utilizando replace
mas não sei quais caracteres especiais vao vir
logo nao posso utilizar o replace
no c sharp existe o comando = StringSplitOptions.RemoveEmptyEntries que faz isso
existe algo parecido no java
obrigado

6 Respostas

D

Provável que vai precisar de regex.

M
String palavra = new String();

String[] caracteresEspeciais = {"\\.", ",", "-", ":", "\\(", "\\)", "ª", "\\|", "\\\\", "°"};

		for (int i = 0; i < caracteresEspeciais.length; i++) {
			palavra= palavra.replaceAll(caracteresEspeciais[i], "");
		}

System.out.print(palavra);
M

michelorth_92

esse código remove TODOS os caracteres especiais ?
eu não sei quais caracteres especiais vem no arquivo, apenas leio ele
mas já vi algumas vezes pestana, nota musical, carinhas, …

M

teste ae

System.out.println("!@R$g%&d+=-{}()sd98".replaceAll("\\W", ""));
M

esse ai não ta removendo todos. mas é só voce colcoar todos os caracteres especiais dentro disto

String[] caracteresEspeciais = {"\\.", ",", "-", ":", "\\(", "\\)", "ª", "\\|", "\\\\", "°"};

E

Em vez de listar os caracteres especiais, é melhor listar os caracteres que “não são especiais” e considerar todo o resto como especial.

Por exemplo, você poderia fazer algo como:

String s = "s908908*&&*%¨¨*()&¨¨*&&¨&*jidfhhj";
s = s.replaceAll ("[^A-Za-z0-9.,]+", "");

onde estou limpando tudo que não é letra, número, ponto ou vírgula.

Criado 20 de junho de 2012
Ultima resposta 20 de jun. de 2012
Respostas 6
Participantes 5