gpt4 book ai didi

elasticsearch - 如何在Elasticsearch中用逗号查找数字?

转载 作者:行者123 更新时间:2023-12-02 23:54:26 24 4
gpt4 key购买 nike

像下面的数据这样的查询号没有任何结果,但是可以找到逗号后的空格。

样本数据:

{
"data":"34543,2525,5674,879"
}

查询:
"query": {
"query_string" : {
"query" : "(data:2525)"
}
}

设置:
"analysis":{  
"filter":{
"my_ascii_folding":{
"type":"asciifolding",
"preserve_original":"true"
}
},
"analyzer":{
"default":{
"filter":[
"lowercase",
"my_ascii_folding"
],
"char_filter":[
"html_strip"
],
"tokenizer":"standard"
}
}
}

例如,在找到的 2525中查询 "34543, 2525, 5674, 879",但找不到 "34543,2525,5674,879"

最佳答案

没有更多信息,您似乎正在使用标准标记器。您可以显示如何使用来分析 token

GET users/_analyze
{
"text": "34543, 2525, 5674, 879"
}

要么
GET users/_analyze
{
"text": "34543,2525,5674,879"
}

如果您使用的是标准标记器,那么34543,2525,5674,879只是倒排索引中的一个标记。当您搜索2525时,它将与该 token 不匹配。另一方面,将3453、2525、5674、879标记为四个没有逗号的标记。 2525匹配第二个 token 。

如果要解决此问题,则需要使用其他标记符,该标记符始终对逗号进行标记化,而不仅仅是在标记 Indexing a comma-separated value field in Elastic Search的开头或结尾处。

关于elasticsearch - 如何在Elasticsearch中用逗号查找数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54815123/

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