Elasticsearch с использованием NEST: Как настроить анализаторы для поиска неполных слов?
Я пытаюсь выполнить поиск по частичному слову, игнорируя регистр и игнорируя акцентуацию некоторых букв. Является ли это возможным? Я думаю, что Ngram с токенайзером по умолчанию должен добиться цели, но я нене понимаю, как это сделать с NEST.
Пример: "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);
Спасибо,
Дэвид