查询下方的弹性搜索不返回任何结果:
1.) {"query":{"regexp":{"field_name":".*f04((?!z).)*"}}
为什么像上面这样的查询没有返回任何结果?
我期待这样的结果:
['f00bar', 'f04bar', 'f04barbuh', 'f04ba']
而下面一个返回:
2.) {"query":{"regexp":{"field_name":".*f04((?!z).)*.*"}}
此返回的结果:['f04bar', 'f04barbuh', 'f04ba', 'f04baz']
我知道第二个查询返回结果是因为 .* 最后,正则'!'
表达式有什么问题,应该是别的吗?我们如何使用!
作为 regexp 的一部分来指定ba
不应该跟z
.