今天才知道,中国一共333个市一级行政单位。数据来源是 民政部首页 ➡ 民政数据
import re
def short_name(name):
m = re.search(r'''
(\S+?)
(?:
壮族|回族|维吾尔|省|自治区|特别| # 省
(?:侗|傈僳|傣|哈尼|回|土家|壮|布依|彝|景颇|朝鲜|白|羌|苗|藏)族|
蒙古|柯尔克孜|哈萨克|
地区|市|盟|自治州|自治县
).*$
''', name, re.VERBOSE)
if m:
return m.group(1)
return name
这段代码的作用是把比如 "黔南布依族苗族自治州"
这样的名字,缩短成 "黔南"
。
有一个小坑是,市一级行政区包含 蒙古|柯尔克孜|哈萨克
这三个名字后面没有 族
字。
有一些 XX林区
XX矿区
什么的,我觉得保留比较好。
Python的 re.VERBOSE
真是好东西!