Ersetze in einem String die alle diakritischen Zeichen (ä->a, ...)

String s = "Müller";
s = Normalizer.normalize( s, Normalizer.Form.NFD );
s = s.replaceAll( "[\\p{InCombiningDiacriticalMarks}\\p{IsLm}\\p{IsSk}]+", "" );
System.out.println( s );  // Muller

Die Lösung geht zweistufig vor. Der Normalisier zerlegt zunächst den String und macht die eigentliche Arbeit. replaceAll() entfernt dann übriggebliebene Punke, Striche, Kreise, Häkchen.

Labels:

0 Antwort(en) auf ›Ersetze in einem String die alle diakritischen Zeichen (ä->a, ...)‹

Kommentar veröffentlichen