我在 Impala 中使用 regexp_like 来匹配一些基于正则表达式条件的字符串。我想要匹配的字符串遵循以下格式: 利率.债券.澳元.ABCDEF 注意:“ABCDEF”可以是任意长度。
代码如下:
SELECT path
, regexp_like(path, '^RATES\.BOND\..{3}\..*') as regex
FROM Table1
由于某种原因,上述正则表达式向字符串返回“true”,例如: RATES.BOND_FINANCE.AUD.ABCDEF(_FINANCE 不应匹配)
我使用了在线正则表达式检查工具,这不应该作为匹配项返回。
有人可以帮忙解答这个问题吗?
谢谢
请使用
split_part
。这将为您提供第四个字符串 - ABCDEF。
select split_part('RATES.BOND.AUD.ABCDEF','.',4)
请告诉我这是否有帮助。