quarta-feira, 6 de junho de 2007

ER é Rox

Espressão regular é Rox, hoje, um coléga pediu ajuda pra escrever um ER que retirase todos os caracteres que não fossem letras, números, virgulas, pontos e espaços

Saiu essa espressão [^a-zA-Z0-9á-úÁ-ÚàÀ,\\. ]
depois saiu essa [^a-z0-9á-úà,\\. ]
e então esta [^\\wá-úà,\\. ]

Tá, funcionou, mas ficou a dúvida: Porquê o conjunto á-ú não contempla à (a craseado)? Alguém saberia me responder?

Código de exemplo:

Pattern p = Pattern.compile("[^a-zA-Z0-9á-úÁ-ÚàÀ,\\. ]");
p = Pattern.compile("[^a-z0-9á-úà,\\. ]", Pattern.CASE_INSENSITIVE);
p = Pattern.compile("[^\\wá-úà,\\. ]", Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher("E ele disse 2X: 'java', 'guj',? 'ninja', 'é você É locura ÀÌÒÃÙìòùáÁóÓúÚíÍöôàùáãÕ'!");
System.out.println(m.replaceAll(""));

2 comentários:

Celso disse...

i aee seu tortoo !!
tbem entro na onda dos blog?
ehehehehe

visita o meu la depois !! e se tier algum banner, eu posto la !

abraços

http://catotadotatu.blogspot.com

Thiago Ruiz disse...

cuida do nosso boga aih!!!

eaoiuheoaiu abraço