Databricks正则表达式(Java模式)



TLDR:我想提取模式。Table_name来自一个句子,其中这些是唯一的单词。词匹配

我正在看解析一些日志与Databricks regex_extract (Java正则表达式)。格式是这样的:

2022.11.07T00:00:00.0000 | log_info schema.table_name... [ hh.mm.ss ]

我从这个开始得到我需要从

中提取的东西:
SELECT split_part(split_part(message, '|', 2), '[', 1)
FROM (SELECT '2022.11.07T00:00:00.0000 | log_info schema.table_name... [ hh.mm.ss ]' as message)

这让我:"log_info schema.table_name…">

但是现在我想要得到第一个周期前后的第一个单词。

任何帮助将是伟大的,特别是如果有一个比使用split_parts更优雅的解决方案。

昨天晚上在梦里弄明白了。

SELECT regexp_extract(message, '([a-z]+[.][a-z]+(?:_[a-z]+)*)')
FROM (SELECT '2022.11.07T00:00:00.0000 | log_info schema.table_name... [ hh.mm.ss ]' as message)

最新更新