Remova caracteres acentuados de uma String em Java

Removendo das letras, os acentos: - agudo, - grave, - crase, - trema, - til e - cedilha.

O método a seguir converte todos os caracteres acentuados de uma String em nos respectivos caracteres sem acento. Ele é perfeito para uso de aplicações que possam haver problemas de compatibilidade com codificação: UTF-8, UTF-16, ISO-8859-1, entre outras.

import java.text.Normalizer; import java.util.regex.Pattern; public class Teste { public static String value = "À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ø ù ú û ü ý þ ÿ "; public static void main(String args[]) throws Exception { System.out.println(semAcento(value)); } public static String semAcento(String str) { String nfdNormalizedString = Normalizer.normalize(str, Normalizer.Form.NFD); Pattern pattern = Pattern.compile("\\p+"); return pattern.matcher(nfdNormalizedString).replaceAll(""); }}
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados