我正在尝试创建一个新的列的基础上与apache-superset和postgres后端的regexp其他列。
我正在使用:
REGEXP_REPLACE(website,'^[a-z]{2}\\.google.com', 'google')现在我有了一个新的专栏,当regexp为True时,'google‘存在。如何将多个语句链接起来,例如:
REGEXP_REPLACE(website,'^[a-z]{2}\\.google.com', 'google')
REGEXP_REPLACE(website,'^[a-z]{2}\\.bing.com', 'bing')当我尝试添加新的regexp_replace时,它停止工作,我尝试用逗号分隔语句,但它不起作用。
基本上,我需要postgres中类似的东西:
CASE
WHEN REGEXP_MATCH(website,'^[a-z]{2}\\.google.com')
THEN 'google'
WHEN REGEXP_MATCH(website,'^[a-z]{2}\\.bing.com')
THEN 'bing'
ELSE '(other)'
END发布于 2020-06-01 16:50:33
您可以尝试使用捕获组:
REGEXP_REPLACE(website,'^[a-z]{2}\\.(google|bing)\\.com', '\\1')请注意,如果上述方法不起作用,请尝试使用\1或$1作为捕获组。
https://stackoverflow.com/questions/62128492
复制相似问题