hive中substr和regexp_replace的使用

  • substr
  1. 从指定位开始截取字符串
SELECT SUBSTR('2022-05-04',2) 
#这里以年月日作为测试数据,SUBSTR(column, start_index),这种用法会从start_index位置开始截取字符串到最后一位,这里要注意,索引是从1开始而不是0

在这里插入图片描述

  1. 从指定位置开始截取,截取到指定的最后一位
SELECT SUBSTR('2022-05-04',1,4)
#SUBSTR(column, start_index, length),这里start_index还是截取字符串的起始位置, length指的是从start_index位置开始截取的长度

在这里插入图片描述
 3. 从字符串后面开始截取

SELECT SUBSTR('2022-05-04',-3,2)
#如果指定从SUBSTR(column, start_index, length),如果start_index为负数就是从字符串的后面开始截取指定长度的字符串

在这里插入图片描述

  • regexp_replace
    regexp_replace函数的作用就是根据指定的正则表达式替换字符串
SELECT REGEXP_REPLACE('2022-05-04','[0-9]','A')
#REGEXP_REPLACE(column, regular_expression, replace_string),第一位就是要进行匹配的字符串,regular_expression就是正则表达式, replace_string就是用来替换的字符串

在这里插入图片描述