Замена символов с акцентом/умлаутом на их неукрашенные аналоги в C# [дубликат]

StackOverflow https://stackoverflow.com/questions/382917

  •  23-08-2019
  •  | 
  •  

Вопрос

Дубликат 249087

У меня есть несколько адресов, созданных пользователем, которые могут содержать символы с диакритическими знаками.Что наиболее эффективно (т.общий) способ (кроме простой замены) автоматически преобразовать любые такие символы в их ближайший английский эквивалент?

Например.любой из àâãäå станет а

æ станут двумя отдельными буквами ае

ç станет с

любой из èéêë станет е

и т. д.для всех возможных вариантов букв (желательно без необходимости искать и кодировать поиск для каждой диакритической формы буквы).

(Примечание:Мне приходится передать эти адреса стороннему программному обеспечению, которое не способно печатать ничего, кроме английских символов.Я бы предпочел, чтобы программное обеспечение могло их обрабатывать, но я не могу это контролировать.)

РЕДАКТИРОВАТЬ:Неважно...Нашёл ответ [здесь][2].Оно появилось в разделе «Похожие» справа от вопроса после публикации, но нет в моем предыдущем поиске или в качестве предложения перед публикацией.Хм.В любом случае я добавил тег «диакритика» к другому вопросу.

РЕДАКТИРОВАТЬ 2:Господи!Кто проголосовал за это -1 после того, как я закрыл это?

Это было полезно?

Решение

Как раз собирался разместить ту же ссылку :-)

Похоже, вы уже это делаете, но я бы рекомендовал вам сохранить исходную строку для отображения в вашем приложении и делать это только для сторонних материалов.Люди злятся, если не думают, что их настоящее имя важно :-)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top