odps正则抽取省份以及城市

在odps中使用方式如下 。

-- select 1,
-- case when length(regexp_extract('上海市浦东新区西门路588弄-39-~42号','(.+省|.+自治区)(.+市)',1))=0 
-- then regexp_extract('上海市浦东新区西门路588弄','(.+市)',1)
-- else regexp_extract('上海市浦东新区西门路588弄','(.+市)(.+区)',1) end as jny_province     
-- ,case when length(regexp_extract('上海市浦东新区西门路588弄-39-~42号','(.+省|.+自治区)(.+市)',2))=0 
-- then regexp_extract('上海市浦东新区西门路588弄','(.+市)(.+区)',1)
-- else regexp_extract('上海市浦东新区西门路588弄','(.+市)(.+区)',1) end as jny_city    ;

-- select 
-- 1
-- ,regexp_extract('福建省漳州市龙海市崎巷路','(.+省|.+自治区)(.+市)',1)
-- ,regexp_extract('福建省漳州市龙海市崎巷路','(.+省|.+自治区)(.+市)',2)
-- ,regexp_extract('新疆维吾尔自治区乌鲁木齐市天山区中山路479号','(.+省|.+自治区)(.+市)',1) 
-- ,regexp_extract('新疆维吾尔自治区乌鲁木齐市天山区中山路479号','(.+省|.+自治区)(.+市)',2) ;
 

你可能感兴趣的:(odps)