Azure搜索分析器与其他单词时态不匹配

时间:2016-11-18 15:13:33

标签: azure azure-search azure-search-.net-sdk

我在搜索索引

上使用以下搜索字段定义
 new Field("Description", DataType.String, AnalyzerName.EnMicrosoft),

使用英文微软文本分析器,但它似乎并不像我期望的那样匹配单词。使用"切片"等词搜索该字段时Azure搜索不会返回" slice"," slices"等结果。类似地,当搜索多个单词时,例如"樱桃"单数形式" cherry"没有返回,反之亦然。只有通过添加'是复数形式返回,但无论如何都会发生," dog"会回来"狗"或者"狗"或者"小狗"因为"狗"只是每个单词的前缀。

是否需要将特殊参数传递给"激活"文本分析器?

1 个答案:

答案 0 :(得分:2)

您似乎正在发出前缀搜索查询。通配符搜索查询(如search = test *或search = te?t)不会在Azure搜索中进行词法分析。如果您确实发出了通配符查询,一种解决方法是使用常规搜索查询发出前缀搜索查询,例如search = slices sliced *。

内特