重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
今天就跟大家聊聊有关如何在小程序中实现一个手机号识别功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
创新互联专注于企业成都营销网站建设、网站重做改版、万荣网站定制设计、自适应品牌网站建设、HTML5建站、商城网站建设、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为万荣等各大城市提供网站开发制作服务。最近做的一个页面里面包含手机号,点击可以拨打电话,本计划着让后端把各个字段查出来就行了,结果接口方面给直接拼好了。
接口返回的字符串:
"【王海】师傅已接单,联系电话:18839687266。稍后与您联系。师傅签到码为【1234】,师傅上门输入签到码后才可开始服务。"
这让我们绑定打电话的事件就不那么方便了,问题聚焦到解析字符串,找出手机号。
split大法,通过split得到包含手机号的数组,然后遍历这个数组,给手机号的元素打上标签。
parseStr (str){ const regPhone = /(1\d{10})/ const list = str.split(regPhone) const result = [] return list.map(c => { let tag regPhone.test(c) ? tag = 'phone' : tag = 'text' return { type: tag, text: c } }) }
通过parseStr函数得到合适的格式后,循环渲染给手机号绑定事件就可以了,代码大概如下:
{{i.text}} {{i.text}}
挺简单的一个实现,就是一开始没想到用split。另外一个要注意的点是这个正则regPhone,仔细看,里面加了有括号,如果separator是包含捕获括号的正则表达式(),则匹配结果包含在数组中。
如果不加括号,相当于是把匹配到的手机号给丢掉了,加上括号,最终数组中才会包括我们匹配到的手机号。
看完上述内容,你们对如何在小程序中实现一个手机号识别功能有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。