正则表达式函数
之前我们介绍过like rlike regexp 这些关键字,都是和匹配有关的,今天我们介绍一下hive 的
REGEXP_REPLACE
和
REGEXP_EXTRACT
函数,背景是使用Hive正则表达式函数提取数字
在我的其他文章中,我们已经看到了如何使用Hive正则表达式从字符串中提取日期值。正则表达式函数有时被称为regex。正则表达式的另一个常见用途是提取数值,例如从字符串数据中提取区号或电话号码。在本文中,我们将检查如何在Apache Hive中使用正则表达式函数提取数字。
使用Hive正则表达式函数提取数字
当您处理不同的数据源时,可能需要从给定的字符串类型列中提取数字值,如电话号码或区号。
以下正则表达式允许您获取所需的数值。
- Hive REGEXP_REPLACE 正则表达式函数
- Hive REGEXP_EXTRACT 正则表达式函数
现在,让我们使用这些函数从字符串类型中提取数字或数值。
使用Hive REGEXP_REPLACE提取数字
Hive REGEXP_REPLACE 函数 是获取所需值的最简单函数之一。这里的想法是用空格替换所有字母字符,除了数字或数值。
例如,考虑下面的Hive示例,用日期值替换所有字符。
sql
SELECT TRIM(REGEXP_REPLACE(string, '[^0-9]'
版权归原作者 不二人生 所有, 如有侵权,请联系我们删除。