1、常量的定义
// 大陆省份(不包括港澳台)
const (
// 4个直辖市
ProvBeiJing = "北京"
ProvTianJin = "天津"
ProvShangHai = "上海"
ProvChongQing = "重庆"
// 5个自治区
ProvGuangXi = "广西"
ProvNeiMengGu = "内蒙古"
ProvXiZang = "西藏"
ProvNingXia = "宁夏"
ProvXinJiang = "新疆"
// 22个省
ProvHeBei = "河北"
ProvShanXi = "山西"
ProvLiaoNing = "辽宁"
ProvJiLin = "吉林"
ProvHeiLongJiang = "黑龙江"
ProvJiangSu = "江苏"
ProvZheJiang = "浙江"
ProvAnHui = "安徽"
ProvFuJian = "福建"
ProvJiangXi = "江西"
ProvShanDong = "山东"
ProvHeNan = "河南"
ProvHuBei = "湖北"
ProvHuNan = "湖南"
ProvGuangDong = "广东"
ProvHaiNan = "海南"
ProvSiChuan = "四川"
ProvGuiZhou = "贵州"
ProvYunNan = "云南"
ProvShaanxi = "陕西"
ProvGanSu = "甘肃"
ProvQingHai = "青海"
)
2、判断方法
package internet
import (
"consts"
"strings"
)
// IsMainland : 判断省份是否属于大陆(不包括港澳台)
func IsMainland(prov string) (string, bool) {
var isMainland bool
address := ""
if prov == "" {
return address, isMainland
}
provs := []string{
// 4个直辖市"北京""天津""上海""重庆"
consts.ProvBeiJing, consts.ProvTianJin, consts.ProvShangHai, consts.ProvChongQing,
// 5个自治区"广西""内蒙古""西藏""宁夏""新疆"
consts.ProvGuangXi, consts.ProvNeiMengGu, consts.ProvXiZang, consts.ProvNingXia, consts.ProvXinJiang,
// 22个省"河北""山西""辽宁""吉林""黑龙江"
consts.ProvHeBei, consts.ProvShanXi, consts.ProvLiaoNing, consts.ProvJiLin, consts.ProvHeiLongJiang,
// 22个省"江苏""浙江""安徽""福建""江西"
consts.ProvJiangSu, consts.ProvZheJiang, consts.ProvAnHui, consts.ProvFuJian, consts.ProvJiangXi,
// 22个省"山东""河南""湖北""湖南""广东"
consts.ProvShanDong, consts.ProvHeNan, consts.ProvHuBei, consts.ProvHuNan, consts.ProvGuangDong,
// 22个省"海南""四川""贵州""云南""陕西"
consts.ProvHaiNan, consts.ProvSiChuan, consts.ProvGuiZhou, consts.ProvYunNan, consts.ProvShaanxi,
// 22个省"甘肃""青海"
consts.ProvGanSu, consts.ProvQingHai,
}
for i := 0; i < len(provs); i++ {
// 判断prov是否包含provs[i], eg: prov="贵州省贵阳市南明区", provs[i]="贵州", 返回true
if strings.Contains(prov, provs[i]) {
isMainland = true
address = provs[i]
break
}
}
return address, isMainland
}