Можно ли получить позиции символов для каждого выделенного фрагмента? Мне нужно совместить выделенный текст с исходным документом и иметь позиции символов, чтобы это стало возможным.
Например:
curl "localhost:9200/twitter/tweet/_search?pretty=true" -d '{
"query": {
"query_string": {
"query": "foo"
}
},
"highlight": {
"fields": {
"message": {"number_of_fragments": 20}
}
}
}'
возвращает этот высокий свет:
"highlight" : {
"message" : [ "some <em>foo</em> text" ]
}
Если полевое сообщение в согласованном документе было:
"Here is some foo text"
есть ли способ узнать, что фрагмент начинается с char 8 и заканчивается на char 21 совпадающего поля?
Знание смещения начала и конца совпадающего токена было бы полезно для меня - возможно, есть способ получить доступ к этой информации с помощью script_fields? (Этот question показывает, как получить токены, но не смещения).
Поле "сообщение" имеет:
"term_vector" : "with_positions_offsets",
"index_options" : "positions"