码迷,mamicode.com
首页 > 其他好文 > 详细

hive 正则表达式 匹配中文

时间:2018-06-26 20:47:32      阅读:1511      评论:0      收藏:0      [点我收藏+]

标签:mit   字符   参数   normal   regex   exp   int   表达式   padding   

例如:要取出收件人 *的

select regexp_extract(‘收件人为小明的15622150839‘,‘收件人为([\\u4E00-\\u9FFF]+)的‘,1 ) from tmp.t_gg  limit 1;
select regexp_extract(‘收件人为小明的15622150839‘,‘收件人为([啊-龥]+)的‘,0 ) from tmp.t_gg  limit 1;

select regexp_extract(‘收件人为小明的15622150839‘,‘收件人为([\\u4E00-\\u9FA5]+)的‘,1 ) from tmp.t_gg  limit 1;

如果要取出手机号码

select regexp_extract(‘你好,李先生你的电话是15622150839‘,‘电话是([0-9])+‘,0 ) from tmp.t_gg  limit 1;

regexp_extract函数

 

语法:    regexp_extract(string subject,  string pattern,  int index)

返回值: string

说明:  将字符串subject按照pattern正则表达式的规则拆分,返回index指定的字符。

第一参数:   要处理的字段

第二参数:    需要匹配的正则表达式

第三个参数:

  • 0是显示与之匹配的整个字符串
  • 1 是显示第一个括号里面的
  • 2 是显示第二个括号里面的字段

 

hive 正则表达式 匹配中文

标签:mit   字符   参数   normal   regex   exp   int   表达式   padding   

原文地址:https://www.cnblogs.com/lqs-zsjky/p/9230971.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!