Ich versuche, alle lateinischen Unicode-Zeichen in ihre [a-z]
Darstellungenwie Latin Unicode-Zeichen [az] Zeichen ersetzen
ó --> o
í --> i
ich eins nach dem anderen tun, zum Beispiel leicht zu konvertieren:
myString = myString.replaceAll("ó","o");
aber da es Tonnen von Variationen gibt, ist dieser Ansatz nur unpraktisch
Gibt es eine andere Möglichkeit, es in Java zu tun? zum Beispiel ein regular Expression
oder ein utility library
USE CASE:
1- Städtenamen aus anderen Sprachen in Englisch z.B.
Espírito Santo -> Espirito Santo,
http://stackoverflow.com/a/25057742/984823 Aber immer noch bewusst sein, von einigen Ausnahmen wie l-Takt. –
Dies ist ein sehr primitiver Ansatz für Ihren Anwendungsfall. Im Deutschen kann in Situationen, in denen nur ASCII angezeigt werden kann, nach dem Zeichen ein Umlaut durch ein e ersetzt werden, z. München wird München. Und der tatsächliche englische Name dieser Stadt ist München. Ich würde vorschlagen, lass die Akzente einfach stehen. Wenn Ihre Anwendung diese Akzente nicht anzeigen kann, ist Ihre Anwendung schrecklich kaputt. – roeland
@roeland Ja das verstehe ich, das Problem ist, dass sich München in vielen verschiedenen Sprachen vorstellt, jede Sprache hat es anders. Jetzt stell dir vor, dass in großen Datenmengen versucht wird, all diese Daten zu analysieren ... nun, die Art, wie ich denke, könnte uns nicht die richtige Stadt geben, aber sie versucht sie zumindest zu "normalisieren" (es gibt ein Sprichwort, wenn die Rate ist über 80% ist es gut genug). das ist, was wir anstreben – nafas