我正在努力让“ asciifolding ”为我的Rails应用程序工作。 我想搜索包含“重音”字符的单词,例如我想在搜索“ foroige ”时出现“foróige”。 我尝试了很多东西。其中有几个在下面。
analysis: {
analyzer: {
text: {
tokenizer: "standard",
filter: ["standard","lowercase", "asciifolding"],
char_filter: 'html_strip'
},
sortable: {
tokenizer: "keyword",
filter: ["lowercase", "asciifolding"],
char_filter: 'html_strip'
}
}
}
我也尝试过char_filter跟随James Healey charmap为狮身人面像加入重音字符。 http://yob.id.au/2008/05/08/thinking-sphinx-and-unicode.html
非常感谢任何帮助。
答案 0 :(得分:6)
在玩完之后我解决了这个问题。我不得不改变默认分析器的行为。
analyzer: {
default: {
tokenizer: "standard",
filter: ["standard", "lowercase", "asciifolding"]
},
text: {
tokenizer: "standard",
filter: ["standard", "lowercase"],
char_filter: 'html_strip'
},
sortable: {
tokenizer: "keyword",
filter: ["lowercase"],
char_filter: 'html_strip'
}
}