sma*_*ace 35 regex lucene elasticsearch kibana
我想知道如何查询字段以完全匹配字符串.
我实际上试图像这样查询:
url : "http://www.domain_name.com"
Run Code Online (Sandbox Code Playgroud)
返回以#开头的所有字符串http://www.domain_name.com.
Mar*_*rkD 49
我有一个类似的问题,并且ifound".raw"修复它 - 在你的例子中,尝试
url.raw : "http://www.domain_name.com"
Run Code Online (Sandbox Code Playgroud)
Nat*_*Coy 14
只是为@dezhi的评论提供更多的可见性.
in newer version of ES(5.x, 6.x),
you should use `url.keyword` instead,
as they have changed to a new keyword type.
Run Code Online (Sandbox Code Playgroud)
因此,它将是:
url.keyword : "http://www.domain_name.com"
Run Code Online (Sandbox Code Playgroud)
开箱即用不支持精确值.
开箱即用,Lucene不提供精确的场地匹配,例如匹配"Acer Negundo Ab"和仅"Acer Negundo Ab"(不是"Acer Negundo Ab IgG").Lucene也没有提供"Starts With"或"Ends With"功能.幸运的是,有一些解决方法.