我有一个 match_phrase_prefix 查询,它按预期工作。但是当用户在关键字末尾传递任何特殊字符时,ES 忽略这些字符,仍然返回结果。
query{ match_phrase_prefix:{ content: { query: searchTerm } } }
我正在使用此查询来搜索前缀。如果我通过像溢出这样的术语@#@#!! ES 将所有结果返回给我,其中包含溢出一词。但相反,我想进行精确的前缀匹配,其中特殊字符不会被忽略。搜索词可以是多个词,也可以是堆栈溢出搜索。我如何在不忽略 special_chars 的情况下对 prefix_match 进行 ES 搜索。