Hive中,想要替换字符串中的子字符串,可以使用translate和regexp_replace两个函数,具体如下:
- translate函数
格式:translate(string|char|varchar input, string|char|varchar from, string|char|varchar to)
--即将input出现在from中的字符串替换成to中的字符串
eg:select translate('Asher117','Asher','Viva')
>Viva117
- regexp_replace函数
格式:regexp_replace(string INITIAL_STRING, string PATTERN, string REPLACEMENT)
--按照正则表达式PATTERN将字符串INTIAL_STRING中符合条件的部分替换成REPLACEMENT所指定的字符串
eg1:select regexp_replace('Asher117','Asher','Viva')
>Viva117
eg2:select regexp_replace('Asher117','Asher|7','Viva')
>Viva11Viva