2013-05-17 72 views
0

如何使Elasticsearch正確查詢哪些關鍵字應該包含空格,而不是輸入相鄰。例如。Elasticsearch/Lucene拼寫錯誤的空白

「thisisaquery」 - >「這是一個查詢」

我目前的設置是:

"settings": { 
    "index": { 
     "analysis": { 
      "analyzer": { 
       "autocomplete": { 
        "tokenizer": "whitespace", 
        "filter": [ 
         "lowercase", "engram" 
        ] 
       } 
      }, 
      "filter": { 
       "engram": { 
        "type": "edgeNGram", 
        "min_gram": 3, 
        "max_gram": 10 
       } 
      } 
     } 
    } 
} 

回答

0

沒有一個開箱即用分詞器/令牌過濾器的顯式處理你」再問。最接近的將是compound word token filter這需要手動提供一個字典文件,在你的情況下可能需要完整的英文字典才能正常工作。即使如此,它也可能會出現與其他詞彙,縮寫詞等詞彙相關的問題,而沒有大量額外的邏輯。儘管取決於您的確切要求,但可能已經足夠好了。