Azure 搜索返回不正确的结果

Azure Search returning incorrect results

我正在使用 Azure 搜索 来查询与文档相关的数据集。我正在查询数据以根据特定用户的电子邮件地址获取其拥有的文档。

索引中的数据集包含一个名为 UploadedBy 的列,代表上传文档的用户。

我的查询是这样的。

search=myuseremail@mycompany.com&searchFields=UploadedByEmail

搜索查询指定要查找的值以及要在其中搜索它的列。但是,我得到的返回结果与此搜索条件不匹配,即电子邮件地址包含不同的电子邮件地址。

如何防止这些物品被退回?我是不是遗漏了什么?

可能您得到的结果匹配:

myuseremail@abcde.com

*@mycompany.com

这没有错,这是预期的行为,因为电子邮件带有“.”。它被认为是一个停用词。如果你想要完全匹配,你应该使用 search="myuseremail@mycompany.com",转义你的 '.'或将它们替换为另一个不是停用词的字符。

作为另一种选择,使用自定义分析器来避免在“.”上中断。用于电子邮件。