У меня есть указатель с названиями дорог. Мои настройки выглядят так:
"settings": {
"max_ngram_diff": 20,
"analysis": {
"analyzer": {
"str_search_analyzer": {
"type": "custom",
"tokenizer": "whitespace",
"filter": [
"lowercase"
]
},
"str_index_analyzer": {
"type": "custom",
"tokenizer": "whitespace",
"filter": [
"lowercase",
"substring"
]
}
},
"filter": {
"substring": {
"type": "edgeNGram",
"min_gram": 1,
"max_gram": 255
}
}
}
}
}
В индексе есть такие строки:
- Bar Road
- Bar Foo Road
- Foo Road
Итак, когда я ищу «Foo», я получаю # 2 и # 3 в качестве совпадений. Это ожидается.
Но я хотел бы контролировать порядок попаданий. В этом случае я хотел бы иметь # 3 в качестве первого совпадения, потому что строка начинается с поискового запроса.
Можно ли сортировать совпадения по своему усмотрению?