elasticsearch 匹配查询在Elasticsearch中包含正斜杠
Elasticsearch版本:6.3.2 搜索包含正斜杠(/)的属性值时遇到问题。 索引如下所示:elasticsearch 匹配查询在Elasticsearch中包含正斜杠,elasticsearch,kibana,elasticsearch,Kibana,Elasticsearch版本:6.3.2 搜索包含正斜杠(/)的属性值时遇到问题。 索引如下所示: { "day": 1/5/2018 }, { "day": 2/3/2017 }, { "day": 5/7/2018 } ... 现在我想搜索“1/5”并获得包含“1/5”的记录 查询是: "query": { "bool": { "minimum_should_match": 1, "should": [ {
{
"day": 1/5/2018
},
{
"day": 2/3/2017
},
{
"day": 5/7/2018
}
...
现在我想搜索“1/5”并获得包含“1/5”的记录
查询是:
"query": {
"bool": {
"minimum_should_match": 1,
"should": [
{
"match": {
"day": "1/5*"
}
},
{
"query_string": {
"query": "*1/5*",
"field": day
}
}
]
}
}
但我有个例外:
"Cannot parse '*1/5*': Lexical error at line 1, column 6. Encountered: <EOF> after : \"/5*\"",
“无法分析“*1/5*”:第1行第6列出现词法错误。遇到:在:\“/5*\”之后,
我尝试将1/5替换为1\\/5,错误消失了,我可以得到一些结果,但它们不是我想要的
结果只包含“1”或“5”或两者都不包含,如何获得包含“1/5”的结果
非常感谢 该单\用于JSON转义。要使其进入查询字符串,需要对其进行双重转义:blabla\/bla\/bla\/bla\/bla 或 一刀
blabla/bla/bla/bla/bla由于这是一个日期字段,如果您还将日期、月份和年份索引到三个单独的字段中,您可以使用更优化的方式进行查询,这将更加容易ranges@Val实际上这是一个文本字段,我只是用这个作为例子。。。我需要对该文件执行全文查询。你对此有什么想法吗?好的,因为你需要搜索前缀和中缀,我建议你看看下面提供这两种解决方案的线程: