我希望突出显示匹配的结果。如果我提到字段名称,它对我有用,它返回突出显示的文本,但是,如果我将字段指定为“ _all”,则它不返回任何值。这对我有用:
curl -XGET "http://localhost:9200/my_index/my_type/_search?q=stackoverflow&size=999" -d '{
"highlight":{
"fields":{
"my_field":{}
}
}
}'
这将返回预期值,如下所示:[突出显示] => stdClass对象([my_field] =>数组([0] => stackoverflow
是最适合技术人员的网站))
但是当我给这个:
curl -XGET "http://localhost:9200/my_index/my_type/_search?q=stackoverflow&size=999" -d '{
"highlight":{
"fields":{
"_all":{}
}
}
}'
我得到空值/无结果。
[highlight] => stdClass Object ( [_all] => Array () )
如何使它在任何字段上都能使用,而不必提及字段名称?
您需要将_all字段映射为已存储。下面的映射应该可以解决问题。注意,尽管这会增加索引的大小。
{
"my_type": {
"_all": {
"enabled": true,
"store": "yes"
}
}}
问题内容: Eclipse不会为我突出显示匹配的变量: 我已经尝试通过更改“标记出现次数” 但这没用。我不确定在其他人已经能够解决此问题的同时,为什么这不起作用。 谁能告诉我如何设置突出显示的匹配变量? 用我的眼睛寻找相同的变量真的让我非常困扰。 问题答案: 尝试: 选择所有可用的选项。 也请前往: 比较“发生次数”和“写入发生次数”的设置 确保您没有选中其中之一的“文本显示为高亮显示”选项。 这
我使用Elastic5.4,想要查询包含多种类型文档的索引。(类型a和类型b)。下面是索引中的示例文档: 文件: 映射: 我的查询是在任何类型的任何字段中搜索所有包含“John”的文档,并突出显示找到匹配的字段。这个查询是按照弹性文档构造的。我的模式映射将ngram_analyzer配置为分析器,而不是模式中所有字符串类型字段的默认分析器。 如何在结果中返回高亮显示?
问题内容: 我需要在段落中突出显示关键字,就像google在其搜索结果中一样。假设我有一个带有博客文章的MySQL数据库。当用户搜索某个关键字时,我希望返回包含这些关键字的帖子,但只显示帖子的一部分(包含搜索关键字的段落)并突出显示那些关键字。 我的计划是这样的: 找到内容中包含搜索关键字的帖子ID; 再次阅读该帖子的内容,并将每个单词放入固定的缓冲区数组(50个单词)中,直到找到关键字。 您能为
问题内容: 我想通过搜索突出显示所有匹配的单词。我写了代码,但是不能使用循环。当我搜索单词时,我的应用程序会找到单词并仅突出显示第一个单词。这是我的代码 我很快就很新。抱歉,编码错误。我的代码找到匹配项计数,但是如何突出显示所有匹配项,谢谢 问题答案: 基于NSRegularExpression的强制性解决方案。
问题内容: 我像电话教程一样在angularJS中使用ng- repeat和filter,但我想在页面中突出显示搜索结果。使用基本的jQuery,我只需在输入的键上解析页面,但是我试图以有角度的方式进行操作。有任何想法吗 ? 我的代码: 问题答案: 对于AngularJS v1.2 + HTML: JS: CSS:
如果所有未分析的字段与搜索查询匹配,我希望突出显示它们。 索引实体如下所示: 假设我有一个,它带有,然后运行一个具有相同值的搜索查询,并使用以下代码突出显示搜索结果: 因此,我得到以下代码片段:. 这似乎是合理的,因为分析器将符号视为停止字,而将视为分隔符,并且不突出显示它们。但是我不知道如何在突出显示这个字段的同时避免使用analyzer。类中有一些方法需要而不是,但我不知道如何使用它们。 我想