Hive 零宽断言与中括号的踩坑记

先交代下背景:

            数据分析时需要解析json中的jsonArray对象,get_json_object函数无解,解出来是NULL,绕开它寻求正则的方式。

json对象参考如下:


常规用领宽断言正则解法:select regexp_extract(json,'((?<=\[)(.*?)(?=\]))')

正则解析无误(java,python,sublime验证N遍),Hive死活解析为空,无奈去跟Hive日志,发现就没把[]中括号正常解析(用的内部ODPS不方便截图)

正解:select regexp_extract(pid,'((?<=\\[)(.*?)(?=\\]))')  切记加上两个\\

后续行转列部分不在赘述,常规操作即可

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容