Я использую Google Datastudio , чтобы сделать оператор CASE
, чтобы взять строку из нескольких слов и разбить ее на категории. Меня попросили использовать REGEXP_MATCH (больше ничего, я знаю, что contains
функция будет проще).
Мне нужно решение, чтобы соответствовать следующим словам:
HouseBrochure
home brochure
HomeBrochure
house brochure
Bathroom brochure
Bathroombrochure
FloorBrochure
floor brochure
Чтобы усложнить ситуацию, эти слова приходят через систему запросов веб-сайта, что означает, что люди могут запросить брошюру house , bathroom и floor в одном запросе. Когда такие запросы достигают моего сервера, он компилируется в список (строку), который выглядит следующим образом:
# (with the pipes included)
HouseBrochure|Bathroom brochure|floor brochure
Это всего лишь пример 1 запроса, есть много вариантов и несколько запросов (я также включил только несколько таких брошюр, их гораздо больше)
Мне нужно выделить все house brochures
, все bathroom brochures
и все floor brochures
и т. Д., Чтобы я мог подсчитать, сколько запросов было сделано для каждой брошюры.
Будучи новичком в Regex, я имею базовое понимание, но далеко не продвинулся.
Моя текущая попытка в Data studio выглядит так:
CASE
WHEN REGEXP_MATCH(Event Label,'^.*(HouseBrochure.*|home brochure.*|HomeBrochure.*|house brochure.*).*$') THEN 'Home Brochure'
END
Это только для домашней брошюры, но она не работает, кто-то может помочь?
Также в качестве FYI Datastudio
используется REG2