如何从 Datastudio 中的 URL 中提取 ID?

How can I extract an ID from an URL in Datastudio?

我的任务是创建一个包含所有 ID 的新维度。

我需要从 URL 中提取 50 个 ID。 URL 位于维度“seite”(页面)中。 我已经知道所有 ID(例如 ID:S121314、s232425)。 URL 看起来像这样:www.website.ch/de/cms/seite/a-lot-of-text-stands-here-S121314a340921 并非所有 URL 都有 ID,此处 ID 的第二部分“a340921”应省略。

我尝试了这个和其他一些东西,但没有任何效果:

新维度“ID”:

CASE
WHEN Seite IN ("S143254","S162892","S110454","S... otherIDs") THEN "hat ID"
ELSE "keine ID"
END

结果,我得到所有 13000 URL 都有“keine ID”。 我知道这个 WHEN IN 代码不会提取 ID,我只是想看看我是否可以在 URL 中找到失败的 ID。

如果有人能帮助我,那就太好了。如果问题有任何错误或信息缺失,请告诉我。

用这个公式创建一个新字段(我将这个新字段命名为 seite_id):

REGEXP_EXTRACT(seite, '-(S[0-9]+)')

对于这个正则表达式,我假设您的所有 ID:

  • 出现在URL后一个“-”(破折号);
  • 以字母“S”开头;
  • 仅包含“S”后的数字;
  • 在第一个非数字字符(例如小写的“a”)后停止。

如果我的猜测是正确的,这个正则表达式应该可以完成工作,您将得到一个只有页面 ID 的新字段。在此之后,您的声明应该有效:

CASE
  WHEN seite_id IN ("S143254","S162892","S110454","S... otherIDs") THEN "hat ID"
  ELSE "keine ID"
END