hive分离字符串中的数字字母
需求
有⼀个字段有字母和数字组成,现要将字母和数字进⾏分离;
portyarn8088manager
porthdfs9820filse
hive 字符串转数组porthive10000query
要求输出结果
portyarn8088manager portyarnmanager 8088
porthdfs9820filse porthdfsfilse 9820
porthive10000query porthivequery 10000
select'porthdfs9820filse' port_info
union
select'porthive10000query' port_info
union
select'portyarn8088manager' port_info
思路
解题在于把不同字符和数字替换成⼀个指定的特征字符,这样可以将⼀个字符就替换所有的字符,⼀个特征数字就可以代表所有的数字,在删除数据的时候,⽆需逐⼀查多个字符或多个数字了。
1、将特征字段替换成指定字符
select port_info,
translate(lower(port_info), 'abcdefghijklmnopqrstuvwxyz', repeat('#', 26)) temp_info_1,
translate(lower(port_info), '0123456789', repeat('&', 10)) temp_info_2
from (select'porthdfs9820filse' port_info
union
select'porthive10000query' port_info
union
select'portyarn8088manager' port_info) t;.
结果如下
porthdfs9820filse >###9820> porthdfs&&&&filse
porthive10000query >###10000> porthive&&&&&query
portyarn8088manager >###8088>## portyarn&&&&manager
2、通过正则,将特定字符删除
select port_info,
regexp_replace(temp_info_2, '\\&', '') alb,
regexp_replace(temp_info_1, '\\#', '') zm
from (select port_info,
translate(lower(port_info), 'abcdefghijklmnopqrstuvwxyz', repeat('#', 26)) temp_info_1,
translate(lower(port_info), '0123456789', repeat('&', 10)) temp_info_2
from (select'porthdfs9820' port_info
union
select'porthive10000' port_info
union
select'portyarn8088' port_info) t) t;
结果
porthdfs9820 porthdfs 9820
porthive10000 porthive 10000
portyarn8088 portyarn 8088
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
hive字符串拼接数字科学计数法
« 上一篇
hive操作(行转列,列转行)
下一篇 »
热门文章
-
excel文字递增函数公式
2025-02-08 -
数字递增公式
2025-02-08 -
notepad 正则变量运算
2025-02-08 -
C++regex库常用函数及实例
2025-02-08 -
js正则表达式之前瞻后顾与非捕获分组
2025-02-08 -
indesign正则数字和英文之间的空格
2025-02-08 -
C#匹配中文字符串的4种正则表达式分享
2025-02-08 -
PHP正则表达式匹配中文字符
2025-02-08 -
匹配中文汉字的正则表达式介绍
2025-02-08 -
Python正则表达式如何进行字符串替换
2025-02-08 -
orcl中用正则表达式
2025-02-08 -
sql正则表达式excel
2025-02-08 -
dataframe正则表达式
2025-02-08 -
postgress sql正则
2025-02-08 -
el-upload accept 正则表达式
2025-02-08 -
半小时 正则表达式
2025-02-08 -
判断科学计数法的正则
2025-02-08 -
根据url判断静态资源的方法
2025-02-08 -
Java正则表达式-匹配正负浮点数
2025-02-08 -
替换模糊匹配正则-hive
2025-02-08
最新文章
-
一种基于正则表达式的DBC文件解析及报文分析方法[发明专利]
2025-02-08 -
能被5整除的十进制整数的正规表达式
2025-02-08 -
大于0小于等于1的正则表达式
2025-02-08 -
linux grep 26个字母
2025-02-08 -
java pattern 正则表达式
2025-02-08 -
掌握文本编辑器中的搜索和替换技巧
2025-02-08
发表评论