1 /// <summary>
2 /// 解析省市区
3 /// </summary>
4 /// <param name="address"></param>
5 /// <returns></returns>
6 public (string province,string city,string county,string town,string village) Analysis(string address)
7 {
8 string regex = "(?<province>[^省]+自治区|.*?省|.*?行政区|.*?市)?(?<city>[^市]+自治州|.*?地区|.*?行政单位|.+盟|市辖区|.*?市|.*?县)?(?<county>[^县]+县|.+区|.+市|.+旗|.+海域|.+岛)?(?<town>[^区]+区|.+镇)?(?<village>.*)";
9
10 var m = Regex.Match(address, regex, RegexOptions.IgnoreCase);
11
12 var province = m.Groups["province"].Value;
13 var city = m.Groups["city"].Value;
14 var county = m.Groups["county"].Value;
15 var town = m.Groups["town"].Value;
16 var village = m.Groups["village"].Value;
17
18 return (province, city, county, town, village);
19 }