Я пытаюсь преобразовать весь латинский Юникод Характера в их [a-z]
представленийкак заменить латинский Юникод символа [AZ] символы
ó --> o
í --> i
Я могу легко сделать один за другим, например:
myString = myString.replaceAll("ó","o");
но так как существует множество вариаций, этот подход просто непрактичен
Есть ли другой способ сделать это на Java? например regular Expression
или utility library
использования:
1- городские имена из других языков на английский язык, например,
Эспириту-Санту -> Эспириту-Санту,
http://stackoverflow.com/a/25057742/984823 Но все-таки быть в курсе некоторых исключений, например, л-тактный. –
Это очень грубый подход для вашего случая использования. На немецком языке в ситуациях, когда может отображаться только ASCII, умлаут заменяется на e после символа, например. Мюнхен становится Мюнхеном. И фактическое английское название этого города - Мюнхен. Я бы предложил просто оставить акценты. Если приложение не может отображать эти акценты, ваше приложение ужасно нарушается. – roeland
@roeland да Я понимаю, что проблема заключается в том, что представьте себе München на разных языках, на каждом языке это по-другому. теперь представьте в больших данных, пытаясь проанализировать все эти данные ... ну, как я думаю, не может дать нам нужный город, но он по крайней мере пытается нормализовать его «как можно больше» (есть высказывание, если ставка более 80% его достаточно хорошо). это то, к чему мы стремимся – nafas