HIVE SQL中替换不可见字符的正则表达式

一.替换字符串中的空白字符

对于剔除字符串首尾的空格,使用较多的是trim()ltrim()rtrim()函数,但是他们无法去除字符串中间的空格。

这个时候通常会使用正则表达式来替换字符串中的空白字符\s表示匹配任何空白字符,包括空格、制表符、换页符等等, 等价于[ \f\n\r\t\v]。

c 复制代码
select regexp_replace('  abcd  ef  g ','\\s+','');

返回结果:

'abcdefg'

二.替换字符串中的无法解析的非法字符

在实际清洗过程中,发现即使使用了'\\s+'正则进行替换后,仍旧出现字符串中存在不可见字符的情况。这往往是因为上有数据在解析过程中未将无法解析的非法字符剔除掉。

这个时候可以使用regexp_replace(col_name,'[\\x00-\\x08\\x0B-\\x0C\\x0E-\\x1F]+|\\s+','')进一步对不可见字符进行处理。

相关推荐
智海观潮1 小时前
Hive经典面试题之连续登录、行转列和列转行
数据仓库·hive·hadoop
面向星辰1 小时前
sql通配符(大量查找搜索索引)
数据库·sql
斐硕人2 小时前
SQL滚动求和
数据库·sql·mysql·maxcompute
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ3 小时前
java实现校验sql中,表字段在表里是否都存在,不存在的给删除掉
java·sql
baivfhpwxf20234 小时前
删除数据表SQL,不是删除数据,是删除表结构
数据库·sql
泰克教育官方账号4 小时前
泰涨知识 | 10分钟快速入门Hive之基本操作篇
数据仓库·hive·hadoop
howard20054 小时前
5.5 Hive导出数据实战
hive·导出数据
howard20054 小时前
5.3 Hive更新数据实战
hive·数据更新·事务表
码界奇点4 小时前
深入解析MySQL6存储过程游标与触发器的实战应用与性能优化
数据库·sql·性能优化·七牛云存储
q***14645 小时前
oracle 12c查看执行过的sql及当前正在执行的sql
java·sql·oracle