中英文姓名及手机号的正则表达式

来源:互联网 发布:mac双系统 没了一个 编辑:程序博客网 时间:2024/05/17 21:40

中英文姓名及手机号的正则表达式

在正则表达式中规则的不同直接导致了表达式的差异,一般的手机号验证为:

var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;

该表达式仅支持13*、15*、18*这三种手机号,但是在具体项目中针对不同的情况进行酌情的增减。

当前,一般手机号的规则有:

中国移动:139、138、137、136、135 、134、188、187、182、159、158、157 、152 、150
电信:133、153、180、189、181
联通:130 、131、132、155、156、186、185、145

随着支付宝以及各种银行卡也支持办理手机号,号码段以后会增加更多,请酌情增减。


中英文姓名正则匹配

中文姓名匹配的表达式为:

var namereg = /^[\u4E00-\u9FA5]{2,4}$/;

表达式前段标识匹配中文字符,后面的2,4表示长度不小于2,不大于4,鉴于少数民族的姓名长度较长,并且中间会出现“·”,增强的中文姓名匹配正则表达式如下:

var namereg = /^[\u4E00-\u9FA5]+(·[\u4E00-\u9FA5]+)*$/;

相对于前者,取消掉了名字个数的限制,并且支持中间加“·”的姓名的判断。

对于中英文姓名,继续把上式进行增强:

var namereg = /^[\u4E00-\u9FA5A-Za-z\s]+(·[\u4E00-\u9FA5A-Za-z]+)*$/;

上式适用于判断中英文姓名,鉴于英文姓名中间常有空格,所以也加入了适用空格的判断;中文姓名也支持空格以及“·”的匹配。

原创粉丝点击