繁体   English   中英

为什么 REGEXP_MATCH 在 Google Data Studio 中没有像预期的那样工作?

[英]Why is REGEXP_MATCH not working like expected in Google Data Studio?

我尝试在 Google Data Studio 中生成更好的报告。 所以我开始使用带有正则表达式的自定义字段,但效果不如预期。

例如,给定一个自定义字段city ,其中的值为“我爱柏林”,我创建了以下语句:

CASE
  WHEN REGEXP_MATCH(city,".*Berlin.*") THEN "Berlin"         
  ELSE "Other"
END

我的预期结果将与返回的“Berlin”相匹配,但我得到的是“Other”。

我尝试了一些不同的事情,但没有取得积极成果。

问题中提供的CASE语句按预期工作(编辑:供将来参考,这是一个错误,特定于 PostgreSQL 连接器,并且已解决;请参见下面的注释)。

您可以查看添加(捕获组)以及添加不区分大小写的标志(?i)以查看是否可以解决问题:

CASE
  WHEN REGEXP_MATCH(city, ".*(?i)(Berlin).*") THEN "Berlin"
  ELSE "Other"
END

注意2021 年 3 月 25 日的更新明确指出PostgreSQL 连接器的问题已解决:

改进了 PostgreSQL 中的文本功能
我们修复了一个错误,该错误会阻止CONTAINS_TEXTSTARTS_WITHENDS_WITHREGEXP_MATCH函数PostgreSQL 连接器一起正常工作。

可编辑的 Google Data Studio 报告(嵌入式Google 表格数据源)和一个 GIF 来详细说明:

似乎 Regexp 函数不能与 Postgres 实时连接器一起使用(也可能是 MySQL)。 我使用数据提取解决了我的问题,我需要对需要执行正则表达式的字段进行数据提取,并将创建的图表包含到我的报告中,该报告也连接到实时连接器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM