问题标签 [match-phrase]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
elasticsearch - 用于多词搜索建议的 Elasticsearch 查询
我目前正在使用这个 ES 查询来获取来自 ES 的搜索建议(使用 edge n 克)
哪个有效,但仅适用于单个单词。当我输入字母时,会出现单个单词建议,但我正在尝试获取多单词建议,以空格分隔(短语建议)。是否有更好的 ES 查询可供使用,以便获得一些短语建议?
elasticsearch - 如何生成多词搜索建议
我正在使用 Elasticsearch 构建一个小型搜索应用程序,并试图弄清楚如何使用多词(短语)建议构建一个自动完成功能。我有它的工作......有点......
我得到的主要是单个单词的建议,但是当我按下空格键时 - 它会杀死建议。
例如,如果我输入“fast”,它就可以正常工作,如果我输入“fast” - 这会阻止建议出现。
我正在使用Edge N Grams
并且已经按照这里和这里match_phrase_prefix
的例子来构建它。对于in和刚刚使用的字段 include_in_all: false 取消除标题和内容之外的所有字段。我开始认为这只是因为我在一个小数据集上进行测试,并且根本没有足够的标记化术语来产生多词建议。请查看下面的相关代码并告诉我哪里出错了,如果有的话?_all
match_phrase_prefix
elasticsearch - 同时使用 match_phrase_prefix 和模糊性的弹性搜索查询?
我是弹性搜索的新手,所以我很难找到我们数据的最佳查询。
想象一下,我想匹配以下单词“Handelsstandens Boldklub”。
目前,我正在使用以下查询:
如果我正在搜索“Hand”,它当前会列出该词,但如果我搜索“Handle”,则该词将不再列出,因为我打错了字。但是,如果我以“Handlesstandens”到达结尾,它将再次列出,因为模糊会捕捉到错字,但只有当我输入了整个单词时。
是否有可能同时进行短语前缀和模糊性?那么在上述情况下,如果我在途中打错字,它仍然会列出单词吗?
所以在这种情况下,如果我搜索“Handle”,它仍然会匹配“Handelsstandens Boldklub”这个词。
或者还有什么其他的变通方法可以实现上述体验?我喜欢短语前缀匹配,因为它也支持草率匹配(因此我可以搜索“Boldklub han”,它会列出结果)
还是可以通过使用完成建议器来实现上述目标?
elasticsearch - ElasticSearch:替代使用 match_phrase 来支持模糊性
我的文档有一个“描述”字段,包含 3 到 10 个句子。
我必须支持模糊性,因为我不能指望用户说出完全相同的话。
另一方面,我必须使用“match_phrase”而不是“match”,因为如果单词彼此相距太远,则文档不相关。
问题是“match_phrase”不分析单词,因此不支持模糊性。(请参阅此处的最后一段https://www.elastic.co/guide/en/elasticsearch/guide/master/phrase-matching.html)。
我想我需要一个创造性的解决方案来以某种方式实现这两个要求。也许通过使用其他搜索查询。
elasticsearch - Elasticsarch:match_phrase 中的模糊性
我需要进行全文查询以匹配带有多个单词的短语,并定义slop
. 但是文本可能有拼写错误,因此我也需要fuzziness
。
- 我可以用
match_phrase
withslop
,然后我输了fuzziness
- 我可以用
match
withfuzziness
,operator: "and"
然后我输了slop
- 我可能会使用
span_near
然后我丢失全文查询,这将是术语查询
您对执行模糊匹配短语有什么建议吗?
mongodb - 如何在mongodb中同时搜索一个词组和一个关键字?
基本上我正在浏览我的 mongodb 中的一个大型 yelp 数据库,我想找到所有带有短语 hotwings 和关键字折扣的评论。但是我无法创建正确的查询来查找评论中包含短语 hotwings 和关键字折扣的评论。
为了给你一些背景知识,我将 yelp review 的几个大型 json 文件导入到我在 ubuntu 上的 mongodb 数据库中。我想在属性下的“文本”和“酒精:full_bar”下查找关键字“UFC”,并至少返回它们的计数。因为我想看看提到 UFC 和 MMA 的酒吧是否比其他酒吧获得更多的评论、签到和提示,所以没有提到这些事情。
我已经在我的 mongodb 数据库中成功构建了这个索引:
这就是我所拥有的:
到目前为止,它只给了我带有热翅膀的评论,并在那里打折。有没有办法只显示包含短语 hotwing 和关键字折扣的评论?
有没有办法同时搜索多个短语和一个关键词?
symfony - 如何将 match_phrase 与 constant_score、术语一起使用
这是我在 symfony2 中的查询。我想在这里添加“match_phrase”,但是在我添加的任何地方,我都会出错。
当我尝试运行它时,出现错误: nested: QueryParsingException[[articles_v2] No filter registered for [match_phrase]]; }]","状态":400
那么这个 match_phrase 应该放在哪里呢?(我想得到类似 SQL LIKE '%xxxx%' 的结果)
我已经更改了查询。这次没有错误,但无论如何,没有过滤。
python-3.x - 组合单词列表中的短语 Python3
尽我所能从大量的 pdf 文件中获取信息。将它们采用字典格式,其中键是给定日期,值是职业列表。
适当的时候看起来像这样:
然而,偶尔也有几个词不能用一个词的形式可靠地理解的职业,例如:
请注意,“osteopathic Medicine & Surgery”和“Speech-language pathology”是其中两个条目的全文。当我们也有“整骨疗法”甚至“药物”的例子时,这就变得更加棘手了。
所以我的问题是——我应该如何测试这些词的组合,看看它们是否匹配更复杂的职业头衔?我可以使用相同的单词顺序,就像我从源头上坚持的那样。
谢谢!