问题:
HIVE中不支持trim(leading)、trim(trailing)、trim(both) 函数
需求:需要去除字符串中前N位/后N位指定字符
例如:11ABC11文章来源:https://www.toymoban.com/news/detail-530300.html
- MySQL中可使用以下函数解决:
1>. 去掉左边指定的字符串
TRIM(LEADING 'a' FROM '11ABC11')
2>. 去掉右边指定的字符串
TRIM(TRAILING 'a' FROM '11ABC11') 用于去除字符串结尾的指定字符;
3>. 去掉前后指定的字符串
TRIM(BOTH 'a' FROM '11ABC11')
补充:
trim() 用于去除原字段左右两边的空格
ltrim()和rtrim()用于去除原字段左/右的空格
- Hive中可使用以下函数解决:
1>. 去掉左边指定的字符串(去除 '11ABC11’开头的所有1)
regexp_replace('11ABC11', '^(1*+)', '')
2>. 去掉右边指定的字符串(去除 '11ABC11’结尾的所有1)
regexp_replace('11ABC11', '(1*+)$', '')
其他函数亦可利用正则表达式规则自行变换替代。文章来源地址https://www.toymoban.com/news/detail-530300.html
到了这里,关于Hive学习(11)hive去除空格或去掉字符串前后或中间的某一字符串的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!