azure 搜索输入“Hello*”。 如果用户输入特殊字符,如“+”、“-”、“!”、“*”、“~”等(完整列表:-6ren">
gpt4 book ai didi

azure - 搜索文本 "\**"引发错误 "Failed to parse query string."但 "\*"、 "\*~"和 "\~~"有效

转载 作者:行者123 更新时间:2023-12-04 14:29:21 26 4
gpt4 key购买 nike

如果用户开始搜索,我们会自动创建一个以表达式开头,例如用户输入:“Hello”=> azure 搜索输入“Hello*”。

如果用户输入特殊字符,如“+”、“-”、“!”、“*”、“~”等(完整列表: https://msdn.microsoft.com/en-us/library/azure/mt589323.aspx#bkmk_syntax ),我们会自动使用“\”对其进行转义“例如用户输入:He**o => azure 搜索输入:He\*\*o*

这很好用,但如果用户输入是“*”(=>“\**”),azure 搜索会抛出错误“无法解析查询字符串。”。对于“\*”、“\*~”和“\~~”不会发生这种情况。

我怎样才能避免这种情况,“\**”是唯一的异常(exception)吗?

最佳答案

您附加到查询词的通配符“*”可启用前缀搜索查询。前缀搜索查询“\**”返回 400,因为 Azure 搜索不允许将“*”用作前缀搜索查询中的第一个字符,无论它是否转义。字符“*”是前缀搜索查询不能以它开头的唯一字符。非常感谢您报告此事。在这种情况下,错误消息不明确,我们会改进它。

顺便问一下,您的目的是在发出搜索查询“\**”时查找包含以“*”开头的术语的文档吗?

内特

关于azure - 搜索文本 "\**"引发错误 "Failed to parse query string."但 "\*"、 "\*~"和 "\~~"有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38178300/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com