【发布时间】:2018-09-27 19:18:35
【问题描述】:
这是我的正则表达式:
^\/(var\/lib\/docker|kubelet)|(run\/docker\/netns\/).*
这里是需要捕获的字符串。
/var/lib/docker/pods/9bbc0d82-be96-11e8-9217
/var/lib/kubelet/pods/9bbc0d82-be96-11e8-9217
这会捕获 "/var/lib/docker" 而不是 "/var/lib/kubelet" 。 我在这里错过了什么?
我在 node_exporter 服务文件中使用它,所以甚至不确定它使用的是哪种正则表达式。
【问题讨论】:
-
您的括号放错了位置:您告诉引擎在一侧捕获
var\/lib\/docker或在另一侧捕获kebelet。分解,你应该完成。 -
要匹配其中任何一个,请尝试在非捕获组中使用替代
(?:docker|kubelet)。
标签: regex prometheus