1、将数字、字母分为单个词
{ "settings" : { "analysis" : { "analyzer" : { "my_ngram_analyzer" : { "tokenizer" : "my_ngram_tokenizer" } }, "tokenizer" : { "my_ngram_tokenizer" : { "type" : "nGram", "min_gram" : "2", "max_gram" : "3", "token_chars": [ "letter", "digit" ] } } } } }, "mappings": { "my_type": { "properties": { "text": { "type": "string", "analyzer": "my_ngram_analyzer" } } } }
2、使用match_phrasec查询,slop=0
参考:https://www.elastic.co/guide/en/elasticsearch/reference/2.3/analysis-ngram-tokenizer.html