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+','')进一步对不可见字符进行处理。

相关推荐
朝新_6 小时前
Spring事务和事务传播机制
数据库·后端·sql·spring·javaee
百***34959 小时前
Python连接SQL SEVER数据库全流程
数据库·python·sql
干就完事了20 小时前
Hive内置函数
数据仓库·hive·hadoop
l1t20 小时前
用SQL求解advent of code 2024年23题
数据库·sql·算法
DO_Community21 小时前
基于AI Agent模板:快速生成 SQL 测试数据
人工智能·python·sql·ai·llm·ai编程
q***58191 天前
【SQL】MySQL中的字符串处理函数:concat 函数拼接字符串,COALESCE函数处理NULL字符串
数据库·sql·mysql
懒羊羊不懒@1 天前
【MySQL | 基础】多表查询
数据库·sql·mysql
武子康1 天前
Java-170 Neo4j 事务、索引与约束实战:语法、并发陷阱与速修清单
java·开发语言·数据库·sql·nosql·neo4j·索引
q***07141 天前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot
阿杜杜不是阿木木1 天前
在 Hadoop 生态使用 JuiceFS,并为Hive提供HDFS存储安装指南
hive·hadoop·hdfs