Hive正则表达式regexp_replace,截取后提取_汉字_字母_数字

Hive regexp_replace函数

建表 插入测试数据

从字符串中按截取长度提取 汉字/数字/字母。

截取字符串中的汉字“汤姆Tom123那That个456猫Cat789”

 select regexp_replace(substr(e.ename,2,6),'([^\\u4E00-\\u9FA5]+)','')  

from mydb.emp_m ewhere e.empno=8006  ;

返回结果:

2.截取字符串中的数字。“汤姆Tom123那That个456猫Cat789”

select regexp_replace(substr(e.ename,2,6),'([^0-9]+)','')  

from mydb.emp_m ewhere e.empno=8006  ;

返回结果:

Oracle 截取字符串中的数字   写法对比 

select regexp_replace(substr(e.ename,2,6),'[^[:digit:]]')  
from emp_m e where e.empno=8006  ;

3.截取字符串中的字母“汤姆Tom123那That个456猫Cat789”

  select regexp_replace(substr(e.ename,2,6),'([^a-zA-Z]+)','')  

from mydb.emp_m ewhere e.empno=8006  ; 

返回结果:


版权声明:本文为m0_59789299原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。