您的位置:首页 > 其它

hive函数regexp_extract提取固定长度的数字信息(正则表达)

2017-06-27 10:00 218 查看
hive正则表达

regexp_extract(string subject, string regex_pattern, string index)

说明:抽取字符串subject中符合正则表达式regex_pattern的第index个部分的字符串

举例:

--取一个连续17位为数字的字符串,且两端为非数字

select regexp_extract('1、非订单号(20位):00123456789876543210;

                      2、订单号(17位):12345678987654321;

                      3、其它文字','[^\\d](\\d{17})[^\\d]',0) as s1

, substr(regexp_extract('1、非订单号(20位):01234567898765432100;

                      2、订单号(17位):12345678987654321;

                      3、其它文字','[^\\d](\\d{17})[^\\d]',0),2,17) as s2

,regexp_extract('1、非订单号(20位):00123456789876543210;

                      2、订单号(17位):12345678987654321;

                      3、其它文字','[^\\d](\\d{17})[^\\d]',1) as s3;

输出结果:

s1s2s3
:12345678987654321;1234567898765432112345678987654321
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: