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

2018-08-28  本文已影响0人  吴建波_5368

先交代下背景:

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

json对象参考如下:

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

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

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

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

上一篇下一篇

猜你喜欢

热点阅读