у меня база еластик, там есть данные, и такая настройка индекеса
index_ru:
type: custom
tokenizer: standard
filter: [word_delimiter, lowercase, stopwords_ru, stop, russian_morphology, english_morphology, unique]
char_filter: [html_strip]
search_ru:
type: custom
tokenizer: standard
filter: [word_delimiter, lowercase, stopwords_ru, stop, russian_morphology, english_morphology, unique]
char_filter: [html_strip]
делаю такой запрос на поиск
{
"query": {
"filtered": {
"query": {
"match": {
"fullText": {
"query": "российская федерация",
"fuzziness": "AUTO",
"operator": "and",
}
}
},
"filter": {
"range": {
"pubDate": {
"gte": "2015-08-03"
}
}
}
}
}
}
работает хорошо, но он выводит все документы которые содержат оба слова в тексте независимо от расположения, а надо чтобы выводил только те в которых эти слова друг за другом.
Если использовать match_phrase то нет поиска по окончаниям и вообще если вдруг в слове есть ошибки