private Map<String, LibArea> parseProvince(String provinces){
Map<String, LibArea> result = new HashMap<>();
String regex="(?<province>[^省]+省|.+自治区)(?<city>[^自治州]+自治州|[^市]+市|[^盟]+盟|[^地区]+地区|.+区划)(?<county>[^市]+市|[^县]+县|[^旗]+旗|.+区)?(?<town>[^区]+区|.+镇)?(?<village>.*)";
Matcher m= Pattern.compile(regex).matcher(provinces);
String province = null;
String city = null;
String county = null;
while (m.find()) {
province=m.group("province");
city=m.group("city");
county=m.group("county");
}
LibArea libAreaProvice = null;
LibArea libAreaCity = null;
LibArea libAreaCounty = null;
if(province!=null&&city!=null&&county!=null){
province = province.trim();
city = city.trim();
county = county.trim();
LibArea libArea1 = new LibArea();
libArea1.setLevelType(1);
libArea1.setName(province);
libAreaProvice = libAreaMapper.getByLibArea(libArea1);
if(libAreaProvice!=null){
LibArea libArea2 = new LibArea();
libArea2.setLevelType(2);
libArea2.setName(city);
libArea2.setParentId(libAreaProvice.getId());
libAreaCity = libAreaMapper.getByLibArea(libArea2);
if (libAreaCity != null) {
LibArea libArea3 = new LibArea();
libArea3.setLevelType(3);
libArea3.setName(county);
libArea3.setParentId(libAreaCity.getId());
libAreaCounty = libAreaMapper.getByLibArea(libArea3);
}
}
}
result.put("province", libAreaProvice);
result.put("city", libAreaCity);
result.put("county", libAreaCounty);
return result;
}
省市区解析方法--正则
猜你喜欢
转载自blog.csdn.net/VincentLee7/article/details/87622361
今日推荐
周排行