hive regexp_replace 删除多个字符串

问题描述 投票:0回答:1

在我的数据中,我有包含特殊字符的字符串

&#39, & &quot, 

有没有办法使用 regexp_replace 来替换多个字符串。更好的是有一种方法可以选择“test_column”,如果有奇怪的字符(等&)可以删除它们。在我的查询中我正在使用

select regexp_replace(test_column, "(&#39)|(&)","'| &") as my_column

这没有做我想做的事。它到处发现奇怪的字符,并用

替换它
'|&

有没有办法使用 select 语句捕获和更改所有这些,或者我如何在多个字符串上正确使用 regexp_replace 。

hive
1个回答
0
投票

您的替换字符串是

'| &
,因此所有内容都会被该字符串替换。

regexp_replace(string INITIAL_STRING, string PATTERN, string REPLACEMENT)

试试这个

select regexp_replace(test_column, "(&#39)|(&)|(&quot,)","") as my_column
© www.soinside.com 2019 - 2024. All rights reserved.