Hive

hive regexp支持哪些语法

小樊
81
2024-12-19 21:10:40
栏目: 大数据

Hive中的正则表达式支持以下语法:

  1. ^ 表示字符串的开头。
  2. $ 表示字符串的结尾。
  3. . 匹配任意单个字符(除了换行符)。
  4. * 匹配前面的子表达式零次或多次。
  5. + 匹配前面的子表达式一次或多次。
  6. ? 匹配前面的子表达式零次或一次。
  7. {m,n} 匹配前面的子表达式至少 m 次,至多 n 次。
  8. {m,n,} 匹配前面的子表达式至少 m 次,至多 n 次(等价于 {m,\})。
  9. {,m} 匹配前面的子表达式至少零次,至多 m 次。
  10. [] 表示字符集,包含其中任意单个字符。
  11. [^] 表示字符集的补集,包含不在字符集中的任意单个字符。
  12. | 表示或,用于匹配多个子表达式中的一个。
  13. () 用于对子表达式进行分组。
  14. \ 用于转义特殊字符,使其成为普通字符。

示例:

假设有一个表 users,包含两个字段:idname。如果你想查询所有名字以字母 “A” 或 “B” 开头的用户,可以使用以下正则表达式:

SELECT * FROM users WHERE name REGEXP '^[AB]';

如果你想查询所有名字中包含数字 1 或 2 的用户,可以使用以下正则表达式:

SELECT * FROM users WHERE name REGEXP '[12]';

0
看了该问题的人还看了