我在尝试为我的Rails应用程序进行“ asciifolding ”工作时 经历 了非常糟糕的时光。我想搜索含有“字 重音 例如”字,我想“ foróige ”拿出当我搜索“ foroige ”。我已经尝试了很多东西。下面有几个。
analysis: { analyzer: { text: { tokenizer: "standard", filter: ["standard","lowercase", "asciifolding"], char_filter: 'html_strip' }, sortable: { tokenizer: "keyword", filter: ["lowercase", "asciifolding"], char_filter: 'html_strip' } } }
我还通过遵循James Healey charmap的重音字符的狮身人面像尝试了char_filter。 http://yob.id.au/2008/05/08/thinking-sphinx-and- unicode.html
非常感谢您的帮助。
在玩了之后,我解决了这个问题。我必须更改默认分析器的行为。
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' } }