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;
输出结果:
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;
输出结果:
s1 | s2 | s3 |
---|---|---|
:12345678987654321; | 12345678987654321 | 12345678987654321 |
相关文章推荐
- js:js正则一些实例方法(数字调换位置、ip地址合法性检查、url地址提取信息)
- 正则表达式提取数字
- C++中固定长度数字的序列化与反序列化处理
- hive函数 regexp_extract实践
- 常用的RegExp正则表达式判断 数字\字母\中文 大全
- javaScript正则表达式提取字符串中字母、数字、中文 && 字符串替换
- 利用正则表达式分析腾讯网页提取天气信息
- oracle利用正则表达式提取字符串中的数字
- 正则表达式提取字符串中的数字
- 从字符串中提取数字,然后按长度和字典序排列
- 在提取网页内容时,请问匹配UTF8的全部内容,正则如何匹配 繁体、全角数字、标点 等字符
- ASP 通过正则提取信息内容种的图片
- Sql将一个整型数字转换成带前导零的固定长度数字字符串
- JavaScript正则表达式提取字符串中字母、数字、中文[转]
- JavaScript正则表达式提取字符串中字母、数字、中文[转]
- 正则表达式提取数字
- ASP.NET利用正则表达式提取字符串中的数字
- asp正则表达式提取字符串中所有的数字
- [传智播客学习日记]正则提取网页信息并写入文件
- 把数字转化成固定长度的字符串,如00004