蜂巢中的正则表达式提取物适用于以下场景?

时间:2015-11-01 04:00:47

标签: java sql regex hadoop hive

在配置单元中,我需要使用regex_extract在" /"上拆分列。然后选择第三个值,例如:产品/苹果产品/ iphone,在这种情况下它是iphone,如果没有第三个值,那么我们需要回退第二个值,即苹果产品? PLZ指导我实现这一目标。

1 个答案:

答案 0 :(得分:0)

input.txt中

products/apple products/iphone
products/laptop
products/apple products/mobile/lumia
products/apple products/cover/samsung/gallaxy S4


hive> create table inputTable(line String);                                   
OK
Time taken: 0.086 seconds
hive> load data local inpath '/home/kishore/Data/input.txt'           
    > into table inputTable;                                          
Loading data to table default.inputtable
Table default.inputtable stats: [numFiles=1, totalSize=133]
OK
Time taken: 0.277 seconds
hive> select split(line,'/')[size(split(line, '/'))-1]  from inputTable;      
OK
iphone
laptop
lumia
gallaxy S4
Time taken: 0.073 seconds, Fetched: 4 row(s)