【发布时间】:2014-05-29 14:10:38
【问题描述】:
我显然误解了 nGram 如何与 Elasticsearch 一起工作。我希望能够有效地搜索子字符串。这样我就可以输入“大声”,但仍然可以找到“云”之类的词。我将 nGram 标记器设置为 min=2 和 max=10。
显然,nGram 将搜索词 ('loud') 拆分为 'lo'、'ou'、'ud'、'lou'、'oud' 和 'loud'。在某些情况下,这很好,因为如果我搜索“云”,它会发现“更响亮”。但是,我认为通常它只会让我的用户感到困惑。
有没有办法防止 Elasticsearch 拆分搜索词?我尝试在查询字符串中使用引号,但这似乎不起作用。
【问题讨论】:
标签: elasticsearch full-text-search n-gram