我正在尝试构建一个Elasticsearch查询字符串查询。提到必须保留转义字符或特殊字符。
保留的字符为:+-= && || > <! (){} [] ^“〜*?:\ /
未能正确转义这些特殊字符可能会导致语法错误,从而阻止查询运行。”
我的问题是:我该如何转义“ AND”或“ OR”之类的“特殊词”。例如,我想获取与文本“ NOW OR NEVER”(在所有/任何字段上)匹配且状态为“ active”或“ pending”的文档。下面的查询似乎不起作用(OR未被弹性搜索转义)。
NOW \OR NEVER status:(active OR pending)
答案 0 :(得分:1)
您可以尝试将文本用双引号引起来:
GET your_index/_search?q=status:(active OR pending) AND "NOW OR NEVER"