gpt4 book ai didi

elasticsearch - ElasticSearch 查询字符串的模糊查找

转载 作者:行者123 更新时间:2023-11-29 02:55:53 29 4
gpt4 key购买 nike

我使用 ElasticSearch 让用户搜索由连接的标签字符串组成的文本字段。查询看起来像这样并且运行良好:

{
'query' : {
'query_string' : {
'query' : 'user query with +bool AND operators',
'default_operator' : 'AND',
'fields' : ['tag_string'],
'analyzer' : 'my_analyzer'
}
}
}

但是,我想启用模糊匹配,以便涵盖英式英语和美式拼写。例如。我想获得“灰色”和“灰色”或“颜色”和“颜色”的相同结果。

这可以由用户使用模糊运算符“~”来完成 - 因此搜索“color~”同时匹配“color”和“colour”。但这应该是自动完成的……然而,搜索查询可能包含 bool 运算符,因此可能很复杂。

最佳答案

您可以使用模糊查询:

{
"fuzzy" : { "user" : "ki" }
}

或者在匹配 查询中使用模糊性 因素。在示例中实现所需内容的另一种方法是使用同义词。使用同义词,您可以告诉 elasticsearch 将您的单词的同义词与原始单词一起存储,例如灰色将存储为灰色和灰色。

这里是对同义词的深入描述:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/analysis-synonym-tokenfilter.html

关于elasticsearch - ElasticSearch 查询字符串的模糊查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20455648/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com