【发布时间】:2018-06-10 09:03:29
【问题描述】:
我正在尝试使用 Google Data Studio 计算字段提取以下字符串,但 由于 RE2 限制,无法找到正确的 RegEx 语法。
有人可以帮助为这个测试字符串创建 4 个正则表达式匹配项,由/ 分隔,我需要分别匹配字符串的每个部分。
分隔符之间的所有内容都是动态的,但分隔符保持不变。
无法理解它,实际上我甚至不知道它是否可能在 Google Data Studio 的 RE2 中实现。
测试字符串:
组和名称/组 2 和名称 2/组 3 和名称 3/组 4
测试字符串也可以只有 3 个部分
组和名称/组 2 和名称 2/组 3 和名称 3
预期结果:
我需要 4 个匹配模式来匹配由/ 分隔的字符串的每个部分
- 1 正则表达式匹配:组和名称
- 2 正则表达式匹配:组 2 和名称 2
- 3 正则表达式匹配:组 3 和名称 3
- 4 正则表达式匹配:第 4 组
我被这种模式卡住了,它只匹配第二组,但我无法获得动态:
REGEXP_EXTRACT( dimension , '\\\/([^\\\/]*)\\\/' )
PS:发现/ 前面需要加双\\,否则你会得到“Could not parse the formula”。在 https://regex101.com/ 中,它不适用于双 \\
【问题讨论】:
-
如果我理解正确,您一次只能提取一件事。那么,你想要 4 种不同的模式吗?
-
是的@TimBiegeleisen,就是这样,一次只能提取一个,这就是匹配 4 个不同模式的原因,感谢您的关注
-
再说一次,你在这里要求 4 种模式吗?
-
是的,我需要将这些部分分别提取到不同的列中,所以即使一种模式适用于所有情况,它也不会帮助我@TimBiegeleisen
-
为什么不在
/上拆分?
标签: regex google-data-studio re2