Немецкие акцентированные символы умлаутов «ö», «ä» и «ü» часто заменяются неакцентированными версиями, когда пользователь печатает, часто для удобства, когда у них нет правильной клавиатуры.
Для большинства акцентированных персонажей существует определенная не акцентированная версия, которую использует большинство людей. Например, акцентированный «è» всегда заменяется стандартным «e».
С символами умлаут, кажется, есть разница между соглашением, принятым нашими британскими и американскими пользователями.
Британские пользователи заменят их на «o», «a» и «u» соответственно, где как ...
Американские пользователи заменят их на «oe», «ae» и «ue» соответственно.
Наш поиск основан на Lucene.Net , и, как и в любой структуре поиска, метод, используемый для сопоставления всех комбинаций акцентированных символов, заключается в их замене как при создании индекса, так и при поиске. предоставляется критерий, позволяющий сопоставлять только символы без акцента.
Как бы я проанализировал символы с акцентом, чтобы поддержать следующее ...
Немецкий тип клиентов - «Гётц»
Британский тип клиентов - «Готц»
Американский клиент печатает «Гетц»
Учитывая, что имя находится в нашей базе данных в правильной форме «Götz», то как бы я проанализировал «Götz», чтобы все три пользователя могли найти его в индексе?
EDIT
Я нашел эту статью на CodeProject , это именно то, что я искал. В примере показано, как синонимы для слов также могут быть добавлены в индекс Lucene, чтобы они соответствовали так же, как и исходное слово. С небольшой адаптацией я смог сделать именно то, что хотел.