【发布时间】:2020-11-13 14:56:34
【问题描述】:
我正在使用 google re2 正则表达式来查询 Grafana 仪表板上的 Prometheus。尝试通过以下 3 种可能的输入字符串从键中获取值
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"}
..使用如下所列的验证
- 应该包含
abcd- - 不应包含
-ed
不知怎的this regex
\bkey="(abcd(?:-\w+)*[^-][^e][^d]\w)"
..满足第一个条件abcd-,但不能满足第二个条件(否定-ed)。
第二个输入选项的预期输出将是abcd-eest-xyz-bnn。任何帮助将非常感激。非常感谢。
【问题讨论】:
标签: regex prometheus grafana re2