如何在Looker Studio中提取右侧第n个特殊字符左侧文本
在Looker Studio中提取右侧数第二个“-”左侧文本的正则方案
直接用Looker Studio的REGEXP_EXTRACT函数配合指定正则表达式就能实现需求:
核心公式
假设你的现有字段名为原字段,新建字段的公式如下:
REGEXP_EXTRACT(原字段, '^(.*)-[^-]+-[^-]+$')
正则逻辑拆解
^:锚定字符串开头位置(.*):捕获从开头到**右侧数第二个“-”**之前的所有内容(这就是我们要保留的目标文本)-:精准匹配右侧数第二个“-”[^-]+:匹配任意不含“-”的字符段(对应右侧数第二个“-”到最后一个“-”之间的内容)-:匹配最后一个“-”[^-]+$:匹配最后一段不含“-”的内容直到字符串结尾
示例验证
- 输入
M-1030-SIS422-1029-XS→ 提取结果:M-1030-SIS422 - 输入
JACKSON-0003-28→ 提取结果:JACKSON
特殊情况处理
如果部分字段的“-”数量不足2个(比如只有1个或没有),上面的公式会返回null。要是想这种场景下直接返回原字段,可以嵌套IFNULL做兼容:
IFNULL(REGEXP_EXTRACT(原字段, '^(.*)-[^-]+-[^-]+$'), 原字段)
内容的提问来源于stack exchange,提问作者Teun de Kort
相关产品推荐
相关产品推荐

