You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Search查询筛选器中单引号转义方法求助

解决OData筛选器中单引号的转义问题

在OData的$filter语法里,正确转义字符串中单引号的方式是使用两个连续的单引号,这是OData规范明确规定的转义方式,反斜杠确实不被支持——这就是你尝试反斜杠没用的原因。

针对你的场景,正确的查询语句应该是:

*&$count=true&$filter=Name eq 'David O''Neil'

至于你提到用单引号转义(也就是双单引号)没返回记录的情况,可以排查几个方向:

  • 先确认数据源里的目标名称确实是David O'Neil,有没有大小写差异?部分OData服务的字符串匹配是大小写敏感的,如果数据里是david o'neil,严格的筛选就会匹配不到。
  • 检查URL的编码是否正确?如果是直接在浏览器地址栏输入,双单引号一般不需要额外编码,但如果是通过代码发送请求,要确保请求工具没有错误转义这些字符。
  • 确认你对接的OData服务是否严格遵循OData标准?极少数自定义的OData服务可能有特殊的转义规则,但绝大多数标准实现都是支持双单引号转义的。

举个更直观的例子:如果要筛选名为O'Connor的记录,筛选器应该写成Name eq 'O''Connor',而不是其他形式。

内容的提问来源于stack exchange,提问作者Arron

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:18:53