REGEXP_MATCH в Data Studio - PullRequest
       5

REGEXP_MATCH в Data Studio

2 голосов
/ 09 апреля 2020

В настоящее время я использую datastudio для преобразования моих данных в отчеты, и у меня возникли проблемы при создании, поскольку доступные данные не очень удобны для использования. Я хотел бы очистить их с помощью функций регулярного выражения, но не могу найти правильное выражение

Пример:

      1- Apple
      2- Apples
      3 - Pre-apple
      4- Pré-apples
      5-Prèapple

Я хочу преобразовать в

      Apple
      Preapple

Может кто-нибудь помочь мне, пожалуйста? , спасибо!

Ответы [ 2 ]

1 голос
/ 09 апреля 2020

A CASE оператор с парой функций REGEXP_MATCH делает свое дело:

CASE
  WHEN REGEXP_MATCH(Field, ".*(Pr[eèé]-?apples?).*") THEN "Preapple"
  WHEN REGEXP_MATCH(Field, ".*(Apples?).*") THEN "Apple"
  ELSE "Other"
END

Создан Отчет Google Data Studio для демонстрации:

0 голосов
/ 09 апреля 2020

Похоже, что вы хотите все после первого "-". Для этого используйте instr() и substr():

select substr(col, instr(col, '- ') + 2)

Обычно в MySQL самое простое решение - substring_index(). Но у вас может быть несколько '- ', и вы заботитесь только о первом. Если нет, то:

select substring_index(col, '- ', 2)
...