Вопрос 1. Может ли Tableau использовать несколько результатов из одной строки в REGEXP, используя глобальную переменную для сравнения с другой таблицей во время операции соединения?Если нет, вопрос 2 является нулевым.Если да ...
Вопрос 2. Я пытаюсь объединить два источника данных в Таблице, используя регулярное выражение в вычисляемом соединении, потому что левая таблица имеет 1 значение в каждой ячейке (т.е. 64826), а правая -Таблица имеет 4 возможных совпадения в каждой ячейке (т. е. 00000 | 00000 | 21678 | 64826).
Проблема в том, что мое регулярное выражение перестает смотреть после того, как находит 1 совпадение (первое из 4 значений), а глобальная переменная / g дает ожидаемый противоположный эффект и удаляет все совпадения.
Я пробовал рассчитанные объединения на вкладке Источник данных.Я также попытался разделить эти 4 значения в свои собственные столбцы на листах, используя regexp_extract_nth
.В обоих случаях регулярное выражение перестает заботиться о первом результате.Похоже, что левое соединение несколько работает, в то время как внешнее объединение ничего не возвращает.
REGEXP_EXTRACT([Event Number],'(\d{5})')
REGEXP_EXTRACT_NTH([Event Number],'(?!0{5})(\d{5})',1)
В этих примерах регулярное выражение сопоставляет значение NULL с левой таблицей, даже если 64826 находится в правой таблице.Я ожидаю, что вычисленное объединение вернет все возможные совпадения из правильного набора, поэтому совпадение будет на 21678 и 64826, дублируя строки в правой таблице, например ...
21678 - 00000|00000|21678|64826
64826 - 00000|00000|21678|64826
45245 - 45106|45245|00000|00000
45106 - 45106|45245|00000|00000