match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
match() 方法将检索字符串 String Object,以找到一个或多个与 regexp 匹配的文本。这个方法的行为在很大程度上有赖于 regexp 是否具有标志 g。如果 regexp 没有标志 g,那么 match() 方法就只能在 stringObject 中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。
let str1 = '四川省成都市都江堰市道教名山';
let str2 = '北京市海淀区西四环北路73号中关村人才发展中心'
let str3 = '新疆维吾尔自治区乌鲁木齐市沙依巴克区西北路581号';
let str4 = '四川省成都市双流县东升街道星空路二段';
let str5 = '香港特别行政区中西区海滨长廊-中环段';
var reg = /.+?(省|市|自治区|自治州|县|区)/g;
console.log(str1 + ': ', str1.match(reg));
console.log(str2 + ': ', str2.match(reg));
console.log(str3 + ': ', str3.match(reg));
console.log(str4 + ': ', str4.match(reg));
console.log(str5 + ': ', str5.match(reg));