Data Studio:字符出现多次时正则表达式不起作用

Data Studio: regex in not working when character appears more than once

我需要捕获“-”字符之间的所有内容。

例如:

例1: vivo - La reina soy yo 我需要:La reina soy yo.

示例2: VOD - Te volveré a encontrar - Temporada 1 - Cap 23 我需要:Te volveré a encontrar.

我有这个正则表达式,它只适用于示例 1 个案例:

REGEXP_EXTRACT(Etiqueta de evento, ".*\- (.*) ?\-?")

Google REGEXP_EXTRACT here

的文档

我需要更改什么,以便它适用于示例 2 中的字符串?

应该return绿色突出显示的内容,而不是黄色。

您需要使用

REGEXP_EXTRACT(Etiqueta de evento, "^.*? - (.*?)(?: - |$)")

参见regex demo

详情

  • ^ - 字符串开头
  • .*? - 除换行字符外的任何 0 个或多个字符,尽可能少
  • - - - 字符串
  • (.*?) - 捕获组:除换行字符外的任何 0 个或多个字符,尽可能少
  • (?: - |$) - 匹配 - 或字符串结尾的非捕获组。