hive 正则表达式 不匹配 p1 或 p2 或 p3
时间: 2024-05-06 10:17:18 浏览: 132
在 Hive 中,可以使用正则表达式函数 `regexp` 来进行正则匹配操作。如果要匹配不包含 p1、p2 或 p3 的字符串,可以使用 `not regexp` 并结合正则表达式中的逻辑或符号 `|`,示例代码如下:
```sql
SELECT *
FROM my_table
WHERE NOT regexp 'p1|p2|p3' AND column_name IS NOT NULL;
```
以上代码将从表 `my_table` 中选择所有不匹配 `p1`、`p2` 或 `p3` 的非空字符串。
相关问题
hive正则表达式匹配数字
可以使用Hive中的正则表达式函数`regexp_extract()`或`regexp_replace()`来匹配数字。
例如,要从一个字符串中提取所有数字,可以使用以下语句:
```
SELECT regexp_extract('abc123def456', '\\d+', 0);
```
这将返回字符串中第一个匹配的数字,即"123"。
如果要提取所有数字,可以使用`regexp_replace()`函数:
```
SELECT regexp_replace('abc123def456', '\\D', '');
```
这将返回"123456",即去掉所有非数字字符后的结果。
impala正则表达式与hive正则表达式差异
在Impala和Hive中,正则表达式的使用有一些差异。在Impala中,可以使用regexp函数进行正则匹配,而在Hive中,可以使用regexp或regexp_extract函数进行正则匹配。
在Impala中,可以使用regexp函数进行字符串匹配,语法为regexp(subject, pattern),subject为被匹配的字符串,pattern为正则表达式。而在Hive中,除了regexp函数外,还有regexp_extract函数,语法为regexp_extract(subject, pattern, index),subject为被匹配的字符串,pattern为正则表达式,index为匹配到的字符串的索引。
此外,在Impala中,还提供了regexp_replace函数用于正则替换,语法为regexp_replace(subject, pattern, str),subject为被替换的字符串,pattern为正则表达式,str为替换正则表达式匹配到的字符串的字符串。
需要注意的是,如果subject为空、pattern为空,或者pattern匹配不到字符串,则返回值为空。
综上所述,Impala和Hive在正则表达式的使用上有一些差异,包括函数名称和部分语法细节。因此,在使用正则表达式时,需要根据具体的数据库和版本来选择适当的函数和语法。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [hive--正则匹配](https://blog.csdn.net/qq_46893497/article/details/118327619)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [Hive中正则表达式替换函数 regexp_replace和正则表达式解析函数 regexp_extract的用法总结](https://blog.csdn.net/TinyNasubi/article/details/102726927)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文