Elasticsearch 6.2 - 在查询中使用和不使用空格查询字符串问题

时间:2018-03-31 14:51:03

标签: elasticsearch

我的ELASTICSEARCH 6.2查询存在问题。

{ "query_string" : { "default_field": "movie_title",  "default_operator": "AND", "analyze_wildcard":true, "query": "spiderman" } }

在我的文件中,我有两条不同的标题:"蜘蛛侠"和"蜘蛛侠"

使用"蜘蛛侠搜索",我有所有文件,但是使用"蜘蛛侠",我只有1个结果(他找不到' ;蜘蛛侠。')。

我尝试过很多令牌器,分析器,但一切都很好。怎么可能解决这个问题?

谢谢你

1 个答案:

答案 0 :(得分:0)

使用SHINGLE过滤器修复!

"analysis": {


          "filter": {
                "shingle_filter": {
                    "type":"shingle",
                       "max_shingle_size":5,
                       "min_shingle_size":2,
                       "output_unigrams":"true",
                       "token_separator": ""
                }
            },


          "analyzer": {
            "my_analyzer": {

              "type":      "custom",
              "tokenizer": "lowercase",
              "filter":    ["shingle_filter"]

            }
          }


    }