Asciifolding not working Elastic Search Rails

痴心易碎 提交于 2019-12-04 22:48:03

问题


I am having a really bad time trying to get "asciifolding" working for my Rails app. I want to search words containing "accented" characters for example i want "foróige" to come up when i search "foroige". I have tried many things. A couple of them are below.

analysis: {
                analyzer: {
                    text: {
                        tokenizer: "standard",
                        filter: ["standard","lowercase", "asciifolding"],
                        char_filter: 'html_strip'
                    },
                    sortable: {
                        tokenizer: "keyword",
                        filter: ["lowercase", "asciifolding"],
                        char_filter: 'html_strip'
                    }
                }
           }

I have also tried char_filter by following James Healey charmap for sphinx for accented characters. http://yob.id.au/2008/05/08/thinking-sphinx-and-unicode.html

Any help is highly appreciated.


回答1:


After playing around with it i resolved the issue. I had to change the behaviour of the default analyzer.

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'
                    }
                }


来源:https://stackoverflow.com/questions/18718314/asciifolding-not-working-elastic-search-rails

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!