我正在尝试获得一个字段的完全匹配,但不幸的是我的正则表达式无效。我有kibana 4和elasticsearch 1.4.4。我在索引中使用了一个logstash模板,并且我已经分析了所有字符串字段并且没有分析。
现在我正在尝试在字段内搜索字符串,例如,我在urlField中有这些:/lang1/page1/
,/lang2/page1/
和/lang3/page1/
等。
我尝试使用正则表达式来获取上述三个网址,但Kibana不断给我任何包含上述任何示例的内容。例如,它也返回:
`/lang1/page4/other/url/?blahblahblah` and `/hello/this/is/ayman/lang1`
实际上,使用not_anaylzed
对我有用,但我遇到了问题。对于上一组网址,以下查询有效:
urlFiled.raw: /lang1/page1/ OR urlFiled.raw:/lang2/page1/ OR urlFiled.raw:/lang3/page1/ # works.
现在我正在尝试编写一个正则表达式来匹配一个正则表达式行中的上述URL,如下所示:
urlFieldd.raw: / \/(lang1|lang2)\/page1\/ / #--------> didn't work
urlField.raw: / \/(lang1|lang2\/page1)\/$ /
如何使这个正则表达式工作?