Namen (mit Umlauten und ß) in einer ArrayList suchen

osix

Bekanntes Mitglied
Liebe Freunde,

ich hab hier einen String, der einen Namen enthält z.B. Müller

Den möchte ich in einer ArrayList aus Strings suchen.

Sowohl der Name als auch die ArrayList kann ü = ue sein, oder ä=ae, ö=oe und ss=ß

Das soll als GLEICH gelten. Groß / Klein soll auch egal sein !
Wie kann ich das geschickt lösen ?
 
Naiv würde ich so machen:

Durch die Array-Liste gehen (Streams bieten sich da an) und die Strings vergleichen. Vor dem Vergleiche beide Strings wie folgt konvertieren:

Java:
public String normalizeString(String eingabe) {
String result = eingabe.toLowerCase(Locale.GERMAN)
result = result.replace("ä", "ae");
result = result.replace("ü", "ue");
result = result.replace("ö", "oe");
result = result.replace("ß", "ss");
return result;
}

Evtl. gibt es in den StringUtils von Apache Commons da schon was von Haus aus, aber sicher bin ich nicht.
 

Zurück
Oben