Замена символов с акцентом/умлаутом на их неукрашенные аналоги в C# [дубликат]
-
23-08-2019 - |
Вопрос
Дубликат 249087
У меня есть несколько адресов, созданных пользователем, которые могут содержать символы с диакритическими знаками.Что наиболее эффективно (т.общий) способ (кроме простой замены) автоматически преобразовать любые такие символы в их ближайший английский эквивалент?
Например.любой из àâãäå станет а
æ станут двумя отдельными буквами ае
ç станет с
любой из èéêë станет е
и т. д.для всех возможных вариантов букв (желательно без необходимости искать и кодировать поиск для каждой диакритической формы буквы).
(Примечание:Мне приходится передать эти адреса стороннему программному обеспечению, которое не способно печатать ничего, кроме английских символов.Я бы предпочел, чтобы программное обеспечение могло их обрабатывать, но я не могу это контролировать.)
РЕДАКТИРОВАТЬ:Неважно...Нашёл ответ [здесь][2].Оно появилось в разделе «Похожие» справа от вопроса после публикации, но нет в моем предыдущем поиске или в качестве предложения перед публикацией.Хм.В любом случае я добавил тег «диакритика» к другому вопросу.
РЕДАКТИРОВАТЬ 2:Господи!Кто проголосовал за это -1 после того, как я закрыл это?
Решение
Как раз собирался разместить ту же ссылку :-)
Похоже, вы уже это делаете, но я бы рекомендовал вам сохранить исходную строку для отображения в вашем приложении и делать это только для сторонних материалов.Люди злятся, если не думают, что их настоящее имя важно :-)