使用正则表达式处理 hive 中的特殊字符

Posted

技术标签:

【中文标题】使用正则表达式处理 hive 中的特殊字符【英文标题】:handle special characters in hive using regex 【发布时间】:2019-11-13 08:41:52 【问题描述】:

我有这样的数据。


+--------------+--------------+-------------+------------+----------+--------------+-----------------+-----------------+-----------------+-----------------------+---------------------------+----------+
|     label    |     ent      |   custom1   |  account   | custom2  |     icp      |   created_by    |   approved_by   |    posted_by    |      date_posted      |        description        | group_1  |
+--------------+--------------+-------------+------------+----------+--------------+-----------------+-----------------+-----------------+-----------------------+---------------------------+----------+
| FB_FR_SE_1�  | 0418 - NORW  | D_ADJ_USD�  | 06D24CLS�  | ACC�     | [ICP None]�  | lbryan46@LDAP�  | lbryan46@LDAP�  | pprzyboc@LDAP�  | 7/5/2019 3:29:00 PM�  | Credit Loss Translation�  | FCEB�    |

我想去掉尾部特殊字符

提前致谢。

【问题讨论】:

这里使用的是 Hive。 如果您确切知道要转义的字符是什么,则不需要正则表达式。您可以在您使用的语言中仅使用 replace 函数/方法。 【参考方案1】:

使用regexp_replace:

select regexp_replace('FB_FR_SE_1�','�','');

结果:

FB_FR_SE_1

【讨论】:

以上是关于使用正则表达式处理 hive 中的特殊字符的主要内容,如果未能解决你的问题,请参考以下文章

Hive正则表达式

hive正则表达式

hive正则表达式

正则表达式判断字符串中包含数字、大写字符、小写字母、特殊符号中的几种怎么判断?

正则表达式[]里的五个特殊字符

正则表达式判断字符串中包含数字,大写字符,小写字母,特殊符号中的几种怎么判断?