我见过一些类似的问题,但由于问题不完全相同或解决方案不适用于我的情况,我张贴我的问题在这里。
我正在分析一个表,该表在 csv_line
列。问题是有些列有逗号 ,
这也是字段分隔符。这些列被嵌入引号中。
我所做的分析是:
with
sample as (
select 'field1,field3,"http://another.domain/abc/...eIds=111,222,333,444,...,",CustomerX,end' as csv_line)
select
regexp_extract(csv_line,'(,?(".*?"|[^,]*)){1}') as f1
regexp_extract(csv_line,'(,?(".*?"|[^,]*)){n}') as fn
from raw_sample
我试图替换字符/逗号。
我知道opencsvserde允许在create表中定义分隔符和转义双引号,但是我正在寻找一个可以设置的属性,或者一个可以以正确方式进行拆分的正则表达式。
提前谢谢
1条答案
按热度按时间sf6xfgos1#