昨晚老板们丢了个问题出来,在复制粘贴号码搜索的时候,搜索不到用户订单,这就很尴尬了,查了后台。发现老板输入发送给后台的是'<202d>159xxxx8x9<202c>',我寻思着是不是复制错了。
问了具体情况,就是手机直接粘贴的,这就奇怪了,用我安卓机测试没这个问题,定位到问题发生在ios系统上。果然百度了一下是因为自带了Unicode编码,而且这个编码是不可见的。
所以接下来就一顿搜索这个问题的解决方案,找了很多,都是告诉我这个问题的出现,比如:https://juejin.cn/post/6844903683935698952
嗯,我了解了,然后去找解决方案,各种都是后台的,但我是一个前端渣渣呀,不能处理后台的事情,所以只能找前端解决方案。
经过我的一系列正则表达式测试之后,发现我怎么用replace都不行。没办法只能承认自己正则太弱鸡。后面功夫不负有心人啊!!!终于遇到了一个哥们写的心得啊。真的是两眼泪汪汪,要感谢这个小伙子,解决了万年老啊姨的苦难。
解决方案(正题,上面牢骚)
this.data.phone_num.replace(/\D/g, '');//解决ios自带的unicode编码的问题
我需要的是去掉空格去掉,所以多加了去掉空格的
this.data.phone_num.replace(/[, ]/g,'').replace(/\D/g, '');
一把辛酸泪,再次感谢帅小伙。
要是解决了你的问题,请给他个star
呼~,愉快吃午餐去!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。