我有下面的案文,我只是想把括号内的逗号替换一下。
α,β,theta01,zeta01,x9001,A2201,zeta01预期的输出是
αβtheta01 zeta01,x9001 A2201 zeta01 --我正尝试使用正则表达式来完成这一任务
WITH t AS (SELECT '[alpha, beta,theta01,zeta01], [x9001, A2201, zeta01]' col1
)
SELECT t.col1
,REGEXP_REPLACE(t.col1, "(\\[[A-Za-z0-9]*)*,", "\\1") new_col
FROM t;[-转义字符[ \1 -转义组模式]
但是,括号之间的逗号也被删除了。这是我得到的输出
αβtheta01 zeta01 <-<>
如有任何指示,将不胜感激。
发布于 2021-10-05 20:50:37
考虑以下方法
select col1,
( select string_agg(regexp_replace(el, ',', ''), ', ')
from unnest(regexp_extract_all(col1, r'\[.*?\]')) el
) new_col
from t 如果应用于问题中的样本数据,则输出为

https://stackoverflow.com/questions/69454054
复制相似问题