重音不敏感搜索希腊字符

时间:2017-10-13 07:31:17

标签: elasticsearch solr lucene amazon-cloudsearch

我想通过删除或替换具有相似字符的重音标记来搜索希腊字符(具有重音不敏感)。

例如:当搜索希腊口音词πῬοἲὅν时,我们期望重音不敏感搜索,即在搜索结果中需要与προιον相同的希腊口音。

此外,我对希腊字符的了解并不多。所以我只是在寻找标准规则来执行希腊口音不敏感搜索。

ICUFoldingFilter能否解决我的问题?我已经尝试过了。它适用于希腊口音字符。但这不是特定于语言的......它具有对所有语言的内部化支持。在这里,我不确定它是否会破坏我在索引中的现有语言行为。

有没有办法让ICUFoldingFilter成为特定于语言的?

奇特拉

1 个答案:

答案 0 :(得分:0)

@Nikolay

我已经尝试过GreekAnalyzer但有些案例在GreekAnalyzer中也有所突破......

例如:使用GreekAnalyzer为希腊词语 greekword:προϊόν编制索引。 προϊόν被索引为προιον(术语向量)......

如果我按索引(προϊόν)或区分大小写的重音(πΡΟΙΟν,προιον)搜索一个词,那么我会得到预期的结果......

但是对于像πῬοἲὅν,πῬὋἼὋν,πῤΟΙΟν,πΡοῐον,προἲὅν)这样的等效希腊变音符号不起作用,这里是破损。对于上述搜索词,它不会返回προϊόν的文档...

它没有像我们预期的那样表现。在GreekAnalyzer中,προϊόν&之间存在不匹配/差异。 πῬὋἼὋν索引术语(术语向量)。

注意:但这些案例已在ICUFoldingFilter中正确捕获并解决。截至目前,我们的搜索索引正在使用ClassicalAnalyzer,ASCIIFoldingFilter& LowerCaseFilter并支持西班牙语,英语,中文和日文字符。我研究过&检查(testcases)ICUFoldingFilter是replacement of above two filters&捕获了大多数语言的标准规则...... 在这里,我不确定它是否会破坏我在搜索索引中的现有语言行为。

请发表您的想法/建议......