【发布时间】:2018-08-05 22:27:38
【问题描述】:
我正在尝试搜索以下案例
我想搜索以特定单词结尾的名称。例如:
名称:组测试
名称:组测试
名称:组测试组织
这是我的通配符查询
"bool" : {
"must" : [
{
"wildcard" : {
"name.keyword"" : {
"wildcard" : "*test",
"boost" : 1.0
}
}
}
]
}
它返回“组测试”以进行区分大小写的搜索
但我需要同时获取“组测试”和“组测试”以进行不区分大小写的搜索。
我的映射如下:
"name":{
"type":"text",
"fielddata":true
"fields":{
"keyword":{
"type":"keyword"
}
}
}
谁能帮我找出在 elasticsearch java api 中的查询或任何其他方式来搜索它。
弹性搜索版本 6.1.2
非常感谢任何帮助。
【问题讨论】:
-
您使用的是 lowercase_expanded_terms: false 吗?看看这个github.com/elastic/elasticsearch/issues/3922
-
不,我没有使用任何 lowercase_expanded_terms
标签: java elasticsearch wildcard case-insensitive