ElasticSearch 7 MatchPhraseQuery-在两个摘要中突出显示断句

时间:2019-05-16 20:25:58

标签: elasticsearch highlight

我正在使用ElasticSearch 7和FSCrawler为一些PDF编制索引,但是当我搜索某人的全名时,ElasticSearch Highlight将查询结果分为2个摘要,其中一个为名字,另一个为姓氏。

我要搜索的句子是“ Eduardo dos Santos”。

在索引文件中,这句话就像(只是一个片段):

“ [...]Demétriusde Oliveira Moura-matrícula87190; \ n- Edna Martins Sant'Anna-matrícula97489; \ n- Eduardo dos Santos Rocha-matrícula157260; \ n- Elaine Caire-matrícula96482; \ n- Elaine Souza da Costa-matrícula162469; \ n- Emerson Eduardo Viana de Jesus-matrícula173819; \ n-[...]“

我的查询:

{
    "query":{
        "match_phrase":{
            "content":"eduardo dos santos"
        }
    },
    "highlight":{
        "fields":{
            "content":{}
        },
        "number_of_fragments":10,
        "fragment_size":250,
        "order":"score"
    },
    "_source":[""]
}

结果:

{
    "took":3,
    "timed_out":false,
    "_shards":{
        "total":1,
        "successful":1,
        "skipped":0,
        "failed":0
    },
    "hits":{
        "total":{
            "value":1,
            "relation":"eq"
        },
        "max_score":0.86411154,
        "hits":[
        "_index":"dejt_admin",
        "_type":"_doc",
        "_id":"6f63ce8477ab7564a4255377415cd96",
        "_score":0.86411154,
        "_source":{},
        "highlight":{
           "content":[
              "<em>dos</em> <em>Santos</em> Rocha - matrícula  157260;\n- Elaine Caire - matrícula 96482;\n- Elaine Souza da Costa - matrícula 162469; \n- Emerson Eduardo Viana de Jesus - matrícula 173819; \n- Erick William de Souza Andrade – matrícula 128414; \n- Fabiana Docampo Ferrari",
              "- Daniela Ferrari Kovacs - matrícula 97330;\n- Débora Cristina Keila Reis Rodrigues de Carvalho - matrícula 89435;\n- Débora Tomaz Kovo - matrícula 166022;\n- Demétrius de Oliveira Moura - matrícula 87190; \n- Edna Martins Sant'Anna - matrícula 97489;\n- <em>Eduardo</em>"
           ]
        }
     }
  ]
}
}

因此,“ dos Santos”出现在第一个片段中,“ Eduardo”出现在第二个片段中。

预期结果是第一个代码段中的完整句子。

我尝试更改令牌生成器和查询,但结果相同。

有人知道我可以如何改善它吗?

谢谢!

0 个答案:

没有答案