将省市区详细地址解析开【包括详细地址】

使用uniapp地图选择位置的时候,返回给我们的地址是合并在一起的,但是后台保存地址都是单独字段保存,所以需要把地址根据省市区详细地址拆分出来。

getArea(str) {
	let area = {}
	const index1 = str.indexOf("省")
	if (index1 != -1) {
		area.province = str.substring(0, index1 + 1)
		str = str.substr(index1 + 1)
	}
	const index = str.indexOf("自治区")
	if (index != -1) {
		area.province = str.substring(0, index + 3)
		str = str.substr(index + 3)
	}
	let index2 = str.indexOf("市")
	if (index2 != -1) {
		area.city = str.substring(0, index2 + 1)
		str = str.substr(index2 + 1)
	}
	let index3 = str.lastIndexOf("区")
	if (index3 != -1) {
		area.area = str.substring(0, index3 + 1)
		str = str.substr(index3 + 1)
	}
	let index31 = str.lastIndexOf("县")
	if (index31 != -1) {
		area.area = str.substring(0, index31 + 1)
		str = str.substr(index31 + 1)
	}
	let index4 = str.lastIndexOf("镇")
	if (index4 != -1) {
		area.zheng = str.substring(0, index4 + 1)
		str = str.substr(index4 + 1)
	}
	area.detailed = str
	return area;
}
  • 测试
console.log(this.getArea("内蒙古自治区乌兰浩特市二区"));
console.log(this.getArea("重庆市长寿区晏中路与松柏站街交叉口西100米"));
console.log(this.getArea("贵州省毕节市威宁彝族回族苗族自治县海边街道滨海大道奥园广场肯德基旁"));
console.log(this.getArea("重庆市渝中区中兴路"));
console.log(this.getArea("湖北省黄石市阳新县"));
console.log(this.getArea("湖北省宜昌市长阳土家族自治县"));
console.log(this.getArea("重庆市秀山土家族苗族自治县武陵南路武陵广场"));
console.log(this.getArea("湖北省宜昌市长阳土家族自治县"));

在这里插入图片描述

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值