替换地址_智障地址识别,前端(含小程序)5分钟集成

本文探讨了在开发小程序中如何实现类似顺丰的地址识别功能,作者提供了从简单正则验证到使用开源轮子`address-parse`的两种方案,并详细介绍了如何在小程序环境中适配和利用该库。重点在于解决前端纯前端方案中地址格式问题及智能解析的解决方案。
部署运行你感兴趣的模型镜像

场景

最近做一个商城小程序, 服务端没啥问题, 前端这里用户使用过程中要求能够像顺丰小程序一样, 识别地址.

方案一

最简单的方案就是自己撸一套正则, 然后要求用户按照格式输入即可. 这样很快速, 但是容易出问题. 最常见一点, 用户就不按你的规则来咋办? 比如用户的 Excel 表格保存的数据, 可能就保存到地级市, 然后你前端要求精确到"区". 然后你说服务端解决? 显然, 我们这里说的是纯前端方案.

正则参考代码(兼容微信地址库):

e8bc4646d9ea5e3d5125a2aafba526f6.png

简单正则替换

上面就要求用户需要按照: 姓名 [空格] 手机号 [空格] 地址 [空格] 邮编

如果产品可接受, 就拿去用吧.

方案二

找轮子.

GitHub - akebe/address-parse: 对国内地址地区进行智能解析,提取关键数据,如有识别不准的地址请Issues

本来找了两个, 这个直接引用 bundle.js 即可, 较为方便, 就选它了.

使用方法简单, 如下:

  1. 拷贝或下载 dist/bundle.js;
  2. 如果是网页或 npm 使用则直接看README说明即可;
  3. 小程序引用, 将内容放到本地后, const address_parse = require('path_to/address_parse.min') 文件名自己修改, 比如这里我改成了 address_parse.min.js, require 可省略 ".js". 很重要的一步, 由于是小程序 CommonJS 规范, 而源码是支持网页的, 所以内部会有 window 引用, 所以需要在文件内, 将 window.AddressParse 替换成 module.exports, 否则小程序无法成功调用.
e3daa8b500e728ad0144b3c84dd43f4f.png

之后就可以愉快的按照文档使用了, 放心, 文档很短.

你也可以不看文档, 仿写这里代码即可:

1b64a01dc6614b989fb91d6a215cd09e.png

导出的数据结构是这样的, 请自行解构:

f6eef55a461e84f907690ea8ff2a0a9c.png

完事

您可能感兴趣的与本文相关的镜像

LobeChat

LobeChat

AI应用

LobeChat 是一个开源、高性能的聊天机器人框架。支持语音合成、多模态和可扩展插件系统。支持一键式免费部署私人ChatGPT/LLM 网络应用程序。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值