JS 正则表达式从地址中提取省市县

直接上代码,一看就懂, 一般国内地址返回Array前三项就是省市县,若要扩展到社区、街道等可自行扩展。

 

var add1 = '四川省成都市都江堰市天马镇34号';
var add2 = '北京市北京市东城区前门大街1号' 
var add3 = '新疆维吾尔自治区乌鲁木齐市天山区中山路479号';
var add4 = '四川省成都市双流县幸福社区23号';
var add5 = '香港特别行政区中西区尖沙嘴路';
var reg = /.+?(省|市|自治区|自治州|县|区)/g;

console.log(add1 + ': ', add1.match(reg));
console.log(add2 + ': ', add2.match(reg));
console.log(add3 + ': ', add3.match(reg));
console.log(add4 + ': ', add4.match(reg));
console.log(add5 + ': ', add5.match(reg));

 

返回结果为地址数组

四川省成都市都江堰市天马镇34号:  (3) ["四川省", "成都市", "都江堰市"]
北京市北京市东城区前门大街1号:  (3) ["北京市", "北京市", "东城区"]
新疆维吾尔自治区乌鲁木齐市天山区中山路479号:  (3) ["新疆维吾尔自治区", "乌鲁木齐市", "天山区"]
四川省成都市双流县幸福社区23号:  (4) ["四川省", "成都市", "双流县", "幸福社区"]
香港特别行政区中西区尖沙嘴路:  (2) ["香港特别行政区", "中西区"]

 

You may also like...

发表评论

电子邮件地址不会被公开。 必填项已用*标注