嗨,我是使用elasticsearch的新手,我有一个关于在内容中查找关键字的问题。在Es的情况下,当我搜索特定的关键字时,ES显示关键字所在的整个内容。但我想找一些字符串之前,并提前一个特定的关键字,如关键字:“香蕉”内容:“我喜欢香蕉,因为它很好吃”我怎样才能得到这些数据?关键字:“香蕉”内容:“我喜欢香蕉,因为它很好吃”
7rtdyuoh1#
您可以使用highlight和fragment_size。fragment_size:以字符为单位的突出显示片段的大小。默认值为100。当与统一荧光笔一起使用时,句子扫描器在fragment_size旁边的第一个单词边界处拆分大于fragment_size的句子。您可以将fragment_size设置为0,以永不拆分任何句子。
fragment_size
PUT test_banana/_doc/1 { "content": "I like banana because it's tasty" } GET test_banana/_search { "query": { "match": { "content": "banana" } }, "highlight": { "fields": { "content": { "fragment_size": 1, "number_of_fragments": 1 } } } }
1条答案
按热度按时间7rtdyuoh1#
您可以使用highlight和
fragment_size
。fragment_size:以字符为单位的突出显示片段的大小。默认值为100。
当与统一荧光笔一起使用时,句子扫描器在fragment_size旁边的第一个单词边界处拆分大于fragment_size的句子。您可以将fragment_size设置为0,以永不拆分任何句子。