求助:在Grafana中用正则提取特定单词后的全部内容
解决Grafana中提取
sample_word之后内容的正则问题 你写的正则/.+?(?=sample_word)/g是匹配sample_word之前的内容,和需求正好相反,调整成以下两种正则即可:
1. 提取sample_word本身及之后的所有内容
使用正则:
sample_word.*
匹配结果(对应你的示例字符串):
sample_word="abc.net"] 2022-11-21T05:00:09 | api.call | line 100 | INFO | [123456]
2. 仅提取sample_word之后的内容(不包含单词本身)
如果不需要保留sample_word,用支持后向断言的正则:
(?<=sample_word).*
匹配结果:
="abc.net"] 2022-11-21T05:00:09 | api.call | line 100 | INFO | [123456]
注意事项
- 在Grafana的「Filter data by values」中,不需要添加正则分隔符
/和全局标志g,直接输入正则表达式内容即可。 - Grafana多数场景基于Go语言正则引擎,支持上述后向断言语法。
内容的提问来源于stack exchange,提问作者Pynewbie
相关产品推荐
相关产品推荐

