假设我在索引中的一个字段包含单词 entrepreneurial。当我搜索企业家一词时,我没有得到该文件。但是企业家*会。
是否有模式/参数在其中查询搜索具有在搜索文本中包含单词标记的单词的文档?
另一个例子是当你在寻找 Matt 时找到一个包含 Matthew 的文档。
谢谢
假设我在索引中的一个字段包含单词 entrepreneurial。当我搜索企业家一词时,我没有得到该文件。但是企业家*会。
是否有模式/参数在其中查询搜索具有在搜索文本中包含单词标记的单词的文档?
另一个例子是当你在寻找 Matt 时找到一个包含 Matthew 的文档。
谢谢
我们目前没有将所有输入项都视为前缀的模式。根据您要寻找的具体内容,您有几个选择:
将目标可搜索字段设置为特定于语言的分析器。从语言学的角度来看,这是最好的选择。当你这样做时,如果适合语言,我们将进行词干提取,这有助于处理诸如“运行”与“运行”之类的事情。它对您的特定“创业”样本没有帮助,但一般来说,这对回忆有很大帮助。
在将搜索输入发送到搜索之前拆分搜索输入并将“ ”添加到所有。根据您的目标语言,这相对容易(即如果有空格)或非常困难。请注意,前缀不能与词干很好地混合,除非将它们考虑在内并搜索两者(例如,像 search=aa bb -> (aa | aa ) (bb | bb*))
依靠建议。这更像是一个不同的角度,可能与您的情况相匹配,也可能不匹配。搜索建议擅长部分/前缀匹配,它们将帮助用户找到正确的术语。您可以在此处阅读有关此内容的更多信息。
也许这个页面可能会感兴趣..?
https://msdn.microsoft.com/en-us/library/azure/dn798927.aspx
search=[string]
可选的。要搜索的文本。除非指定了 searchFields,否则默认搜索所有可搜索字段。搜索可搜索字段时,搜索文本本身被标记化,因此多个词可以用空格分隔(例如:search=hello world)。要匹配任何术语,请使用 *(这对于布尔过滤器查询很有用)。省略此参数与将其设置为*具有相同的效果。有关搜索语法的详细信息,请参阅 Azure 搜索中的简单查询语法。