You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Grafana中如何编写正则实现变量间的大小写不敏感过滤?

解决Grafana变量正则大小写不敏感过滤的方法

因为Grafana不支持正则的(?i)大小写不敏感标志,我们可以通过将$region变量中的每个字母转换为大小写可选的字符组来实现匹配,具体操作如下:

  1. 在数据源变量的「正则表达式」过滤框中,使用以下表达式:

    T2-${region:replace(/([a-z])/g, '[$&${&.toUpperCase()}]'):replace(/([A-Z])/g, '[$&${&.toLowerCase()}]')}
    
  2. 原理说明:

    • 第一个replace函数:将$region中的所有小写字母(如r)替换为包含大小写的字符组(如[Rr])。
    • 第二个replace函数:将$region中的所有大写字母(如果存在)替换为包含大小写的字符组(如[Rr])。
    • 最终生成的正则会自动适配数据源中的大小写差异:
      • 当$region为r1时,正则变为T2-[Rr]1,可匹配数据源中的T2-R1;
      • 当$region为nyc-1时,正则变为T2-[Nn][Yy][Cc]-1,可匹配数据源中的T2-nyc-1。
  3. 简化版本(若$region仅含小写字母):
    如果确定$region的值全为小写,可省略第二个replace,直接使用:

    T2-${region:replace(/([a-z])/g, '[$&${&.toUpperCase()}]')}
    

内容的提问来源于stack exchange,提问作者Raghav Ravishankar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 21:07:08