Elasticsearch:查找返回响应文档的单词的索引

时间:2016-03-14 11:46:42

标签: elasticsearch elasticsearch-plugin elasticsearch-java-api

我正在查询elasticsearch并获得一个数组作为回报。但返回的数组包含多个句子。我想找到返回文档的单词的索引。 退回文件的相关部分:

" _id":" AVIcfnn-laLYKmOp14og",         " _score":0.17643881,         " _routing":" 1658591699",         " _parent":" 1658591699",         " _source":{           "标题":"",           "段落":[             "插头和针脚采用新型紧凑型便携式电动缝纫机适用于多种功能,如您可以做直针,4步按钮孔,自由臂用于圆形针迹,自动跳闸梭芯绕线器,单触式反向针迹,适用于绗缝,蕾丝工作,皮克特,吸烟,编织,盲目下摆缝合,锯齿形缝合等等具有低维护性的智能外观和60瓦保护期内置电动机两年,以及公司提供的服务在您的门口步骤。&#34 ;,             "图像代表实际产品,但图像和产品的颜色可能略有不同。",             " 2015年4月13日"           ]         },

如何在此数据中找到返回此文档的单词?

2 个答案:

答案 0 :(得分:1)

您可以使用Elasticsearch Highligher,它会在给定内容中突出显示匹配的字符串。

{
"query" : {...},
"highlight" : {
    "pre_tags" : ["<tag1>"],
    "post_tags" : ["</tag1>"],
    "fields" : {
        "_all" : {}
    }
 }
}

https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-highlighting.html

答案 1 :(得分:1)

使用Highlighting

https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-highlighting.html

{
    "query" : {...},
    "highlight" : {
        "fields" : {
            "content" : { fragment_size : 150, number_of_fragments: 1}
        }
    }
}

上面的代码片段会返回1个大小为150个字符的片段。 与fragment_sizenumber_of_fragments一起玩,效果最佳。