|
|
发表于 2010-5-9 14:52:45
|
显示全部楼层
1, 中国省份并不多,并且省份名固定是2-3个字,个人觉得,可以设置为变量,如 set "广西=1"
2, 再先后查找%str:~0,2% ,%str:~0,3%的变量名,成功得到省份,并且接下来执行以下替换,从字符多到字符少如:
!str:广西= ! ,!str:广西省= !,!str:广西自治区= !,!str:广西市= ! 等通用称呼方式。
3, 也可以把某个省有很独特的别称,用写入变量的方式,如set "广西=广西省 广西自治区 广西壮族自治区 ",然后for循环..
4, 接下来set "sq=市 县 区 州 镇 盟",然后FOR循环, 检查%str:~-1%,相等则将"市 县 区 州 镇 盟"的字符替换为空格,取最后一个字符串,得到最精确地名。如:浙江省台州市温岭市,得到的是"浙江 温岭市"。
5, 如果最后一个字符不是%sq%的字符,但包含以上字符,则替换为空格后,取倒数第2个。如:北京朝阳区XX网吧;得到“北京 朝阳区”
6,如果最后一个字符不匹配,也不包含关键字,那么就是特殊地名; 如:内蒙古农业大学;得到“内蒙古 农业大学”;新疆大学软件学院机房A区则要特殊处理了..
最后,"中国"需要特殊处理, "北京市",这样的地名,取得省份后只剩下空格,可以直接输出了 |
|