我有一个名为filepath的列,内容如下:
/data/sudi/tmp/3680170/nn/asset_category/output
/user/vandu/jobhistory/753/109539/skill-metadata.har/_masterindex
/data/new/copy/253002002635638.wav
/data/old/tub/tki/businesseffectivedate=2017-12-05
/data/abc/def/2017-12-07/253002002635637.xml
/data/cde/bbf/test.db/execution_gdspm0102017-12-05.txt
我想在句点(.
)之后提取所有文件扩展名,并提供具有不同文件格式的文件计数。
答案 0 :(得分:0)
有一个regexp_extract
函数in Hive。模式类似^.*\/?.*\.([^\/\.]*)$
。 Click here来测试正则表达式。
SELECT count(*), regexp_extract(path_column, '^.*\/?.*\.([^\/\.]*)$', 1) as ext
FROM my_table
GROUP BY ext