带有换行符的用于访问配置单元serde的regex

py49o6xq  于 2021-06-25  发布在  Hive
关注(0)|答案(1)|浏览(465)

使用aws athena服务,我尝试导入包含新行数据的csv文件
导入数据使用配置单元serde格式。
如果数据是这样的,(每个数据用双引号括起来)
“数据A”|“数据B”|“数据C”
“数据1”|“数据2
带新行“|”数据3
“数据가"|"数据2나"|"数据나"
那么如何将正则表达式写入下表ddl?

CREATE EXTERNAL TABLE ssdm_schema.ABCTable_regex (  
  Data_A VARCHAR(100)  
, Data_B VARCHAR(100)  
, Data_C VARCHAR(100)  
) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'  
WITH SERDEPROPERTIES (  
"input.regex" = '?????????'  
)

我问这个问题是指下面的答案。
如何处理aws athena中的嵌入换行符
谢谢您

smdncfj3

smdncfj31#

解决了。https://regex101.com/r/byf1zm/3 "([\w\s\n\r\X]+?)"\|"([\X\w\s\n\r]+?)"\|"([\X\w\s\n\r]+?)"g 叶和 u 尼科德旗集合。
有三件事让这件事变得棘手:
第2行数据中间的换行符
第2行数据中间的空白
unicode
这个正则表达式可能更简洁,因为匹配模式会重复。

相关问题