iOS开发实战之手机号、座机号正则验证
早些时候一直在写微信小程序、.NETWeb Api相关的教程,写教程就像人生一样,走走停停,思前想后,有什么得失,有什么可以总结与提高。
昨天晚些时候基本上被马保国对阵拳击的视频给刷屏了,顺便在这里发表一下个人观点及感触。太极拳或者是我们传统武术基本上女生的舞蹈一样,本身定位于健身并不是实战击打,而某些上世纪八九十年代活下来的人渣(懂点前史的都晓得,当时气功大师辈出)顶着所谓的国粹或者是弘扬国粹的光环各种恬不知耻。前有闫芳、雷雷、后有马保国,你们如果说正常敛财,那你们低调的去敛就行了,没有人故意愿意让你们老来身败名裂。人活着,要现实些,脚踏实地些。洋洋洒洒的做贱,就怪不得时代的车辙把你压扁了。
好了,继续我们的教程吧。在我们项目或者是产品开发过程,对于手机号、座机号的验证是必须的。那么如何做呢?下面我们来总结总结他的规律。
国内手机号码的构成:以1开头,13X,14X,15X,16X,17X,18X,19X,一共11位数字。当然目前并没有12开头的手机号码。后期如果国家放开这些号段,我们稍微修改即可。
国内座机的号码构成:
第1组:区号,以0开头,只允许输入0-9的数字,长度为2-3位,后面连接-号.
第2组:固话,以2-9开头,只允许输入0-9的数字,长度为6-7位。
第3组:分机号,前面连接-号,以0-9开头,长度为1-4位。
我们知道了规律后,便有助于我们实现写出对应的正则表达式。当然你可以不使用正则表达式,而自己根据规律来写相应的判断语句。但是建议你还是使用正则来写,你只要知道个中原理就行了。
下面我给出我在项目中封装的方法:
对于手机号码的正则验证:
对于座机的验证:
有了以上正则表达式的验证,相信在平常的开发过程中,直接调用此类方法就可以了。 当然建议你养成良好的开发习惯 ,自己封装一个实用工具类将这些公共的方法封装进去,任何项目中均可以用到。不必在控制器中到处复制粘贴。
当然如果你精通javascript、php、.net等,只需要将其语法稍微调整一下即可。