我使用 google re2正则表达式来查询Grafana 仪表板上的Prometheus 。尝试通过以下 3 种可能的输入字符串从 key 获取值
1. object{one="ab-vwxc",two="value1",key="abcd-eest-ed-xyz-bnn",four="obsoleteValues"}
2. object{one="ab-vwxc",two="value1",key="abcd-eest-xyz-bnn",four="obsoleteValues"}
3. object{one="ab-vwxc",two="value1",key="abcd-eest-xyz-bnn-ed",four="obsoleteValues"}
Run Code Online (Sandbox Code Playgroud)
..经过下面列出的验证
abcd--ed不知怎的,这个正则表达式
\bkey="(abcd(?:-\w+)*[^-][^e][^d]\w)"
Run Code Online (Sandbox Code Playgroud)
..满足第一个条件abcd-,但无法满足第二个条件(否定-ed)。
预期输出将来自abcd-eest-xyz-bnn第二个输入选项。任何帮助将非常感激。多谢。