用这样的函数一次替换一个字符很容易:
regexp_replace(string INITIAL_STRING, string PATTERN, string REPLACEMENT)
但是如何一次处理一列中的多个字符串替换?
例如,对于从A到@,B到#,C到Z的关系,如何将"ABC"
更改为"@#Z"
?
答案 0 :(得分:1)
使用translate(input, from, to)函数,它通过将from字符串中的字符替换为to字符串中的相应字符来翻译输入字符串:
hive> select translate('initial string ABC A B C','ABC','@#Z');
OK
initial string @#Z @ # Z
Time taken: 0.063 seconds, Fetched: 1 row(s)