大文字と小文字を区別せず、一部の文字のアクセントを無視して、単語の一部で検索しようとしています。出来ますか?デフォルトのトークナイザーを使用したngramでうまくいくはずですが、NESTでそれを行う方法がわかりません。
例: 「musiic」は「musiic」を含むレコードと一致する必要があります
私が使用している Elasticsearch のバージョンは 1.9 です。
私はこのようにやっていますが、うまくいきません...
var ix = new IndexSettings();
ix.Add("analysis",
@"{
'index_analyzer' : {
'my_index_analyzer' : {
'type' : 'custom',
'tokenizer' : 'standard',
'filter' : ['lowercase', 'mynGram']
}
},
'search_analyzer' : {
'my_search_analyzer' : {
'type' : 'custom',
'tokenizer' : 'standard',
'filter' : ['standard', 'lowercase', 'mynGram']
}
},
'filter' : {
'mynGram' : {
'type' : 'nGram',
'min_gram' : 2,
'max_gram' : 50
}
}
}");
client.CreateIndex("sample", ix);
ありがとう、
デビッド