Regex 在Hive中使用RLIKE时如何编写模糊多子串匹配

Regex 在Hive中使用RLIKE时如何编写模糊多子串匹配,regex,hive,mapreduce,hiveql,rlike,Regex,Hive,Mapreduce,Hiveql,Rlike,例如: df.select('category').show() +---------------------------+ | category| +---------------------------+ | money,insurance| | life, housework| | game,FPS,network| | game,fight,jump| |

例如:

df.select('category').show()

+---------------------------+
|                   category|
+---------------------------+
|            money,insurance|
|            life, housework|
|           game,FPS,network|
|            game,fight,jump|
|                      hotel|
|                 trip,hotel|
|                       null|
我想使用
RLIKE
编写一个正则表达式来模糊匹配子字符串列表中的一个子字符串,
['money','life']

-- This is an exact match
SELECT * 
FROM tb_name
WHERE col_name RLIKE '(money|life)'

-- This is a fuzzy match
SELECT * 
FROM tb_name
WHERE col_name RLIKE '*.(money|life)'
但模糊匹配代码段中的ast树中存在错误。

06-11 16:59:17-致命过滤器ast树

(TOK_查询(TOK_FROM(TOK_TABREF(TOK_TAB tb_name)))(TOK_插入(TOK_目的地(TOK_目录)”hdfs://XXXX/XX)(TOK_SELECT(TOK_SELEXPR TOK_ALLCOLREF))(TOK_WHERE(RLIKE(TOK_TABLE_或_COL COL_name)*(money | life))(TOK_LIMIT 2000)))

06-11 16:59:17-致命筛选器功能:。TOK|U选项卡\S tdw|U inter|db.*.TOK|(多维数据集汇总)

因此,我看不出模糊匹配的代码片段有任何错误。
有人能帮我吗?

感谢您的支持。

“(?i)money | life”
regexp将匹配包含任何
money
life
、不区分大小写的字符串-
(?i)

模糊模板应该做什么
RLIKE'money | life'
将匹配包含任何货币的字符串,life@leftjoin我不认为这是内联网平台的实现问题或其他问题。如果我尝试
RLIKE'money | life'
RLIKE'(money | life),它只返回与
money`或
life
完全相等的值。看看这个:
select'life,house'RLIKE('money | life')
返回TRUE@leftjoin衷心感谢。我确信intranet平台在
RLIKE
上存在一些实现问题。