【发布时间】:2011-03-08 06:31:57
【问题描述】:
当用户键入时,德语重音变音符号“ö”、“ä”和“ü”通常会被替换为非重音版本,这通常是为了方便他们没有正确的键盘。
对于大多数重音字符,有一个大多数人使用的特定非重音版本。例如,重音“è”总是被替换为标准的“e”。
对于元音变音字符,我们的英国用户和美国用户采用的惯例似乎有所不同。
英国用户会将它们分别替换为“o”、“a”和“u”,其中...
美国用户将分别替换为“oe”、“ae”和“ue”。
我们的搜索基于Lucene.Net,与任何搜索框架一样,用于匹配所有重音字符组合的技术是在创建索引和提供搜索条件时替换它们,因此允许使用纯非重音字符进行匹配。
我将如何解析重音字符以支持以下...
德国客户类型 – “Götz”
一位英国客户类型——“Gotz”
一位美国客户键入“Goetz”
鉴于名称在我们的数据库中的正确形式为“Götz”,那么我将如何解析“Götz”以便所有三个用户都可以在索引中找到它?
编辑
我在CodeProject 上找到了这篇文章,这正是我想要的。该示例显示了如何将单词的同义词添加到 Lucene 索引中,以便它们与原始单词一样匹配。稍作调整,我就可以完全按照自己的意愿行事。
【问题讨论】:
标签: internationalization lucene lucene.net diacritics