elasticsearch 忽略大小写模糊搜索实现


在es查询时不区分大小写,可以让查询更方便,具体设置如下:

{
    "settings": {
        "analysis": {
            "analyzer": {
                "caseSensitive": {
                    "filter": "lowercase",
                    "type": "custom",
                    "tokenizer": "keyword"
                }
            }
        }
    },
    "mappings": {
        "personInfo": {
            "properties": {
                "userName": {
                    "type": "string",
                    "analyzer": "caseSensitive",
                    "search_analyzer": "caseSensitive"
                }
            }
        }
    }
}

设置完mappings后,在搜索的时候搜索的 userName 转成小写进行搜索

{
  "query":{
        "wildcard" : {
            "userName": "*zhangsan*"
        }
  }
}

这样设置后就可以了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM