在做前端form表单验证的时候,经常,也是必须对input做一下判断,例如邮箱了,手机了,input非空了,input只能输入数字了等等。

本篇文章主要讲解“ 常用的手机和邮箱正则”,我在做表单的时候,一般是应用,这个插件是比较好用的,能很好的解决绝大部分的表单验证。

但是js 正则表达式,这个表单验证不是万能的,有需要特殊处理的时候,例如,如何正确判断一个input文本框既能输入手机,又能输入邮箱呢?

这种情况的应用场景很多,有时候用户名必须是手机或者邮箱,其他不对,就用到了这个判断。

其实这种正则表达式也是比较简单的,下面我就讲解一下:

正则表达式语法js_js正则表达式子表达式_js 正则表达式

邮箱的正则:

^[w.-]+@(?:[a-z0-9]+(?:-[a-z0-9]+)*.)+[a-z]{2,3}$

手机的正则

^1[3|4|5|8]d{9}$

两个正则的结合,只需要“I”就可以了,如下:

(^[w.-]+@(?:[a-z0-9]+(?:-[a-z0-9]+)*.)+[a-z]{2,3}$)|(^1[3|4|5|8]d{9}$) //邮箱和手机

同样的道理,有时候在填写物流信息的时候,需要留联系方式js 正则表达式,联系方式可以是手机或者电话,那么正则同理也很简单,可以如下写:

(^13[0-9]{9}$|14[0-9]{9}|15[0-9]{9}$|18[0-9]{9}$)|(^0(10|2[0-5789]|\d{3})\d{7,8}$) //手机和电话
/(^1[3|4|5|7|8]d{9})|((^0d{2}-*|^0d{3}-*)d{7,8}$)/  

若你运用,找到.3.2.js这个文件,找到如下代码:

dataType:{
    "*":/[wW]+/,
    "*6-16":/^[wW]{6,16}$/,
    "n":/^d+$/,
    "n6-16":/^d{6,16}$/,
    "s":/^[u4E00-u9FA5uf900-ufa2dw.s]+$/,
    "s6-18":/^[u4E00-u9FA5uf900-ufa2dw.s]{6,18}$/,
    "p":/^[0-9]{6}$/,
    "m":/^13[0-9]{9}$|14[0-9]{9}|15[0-9]{9}$|18[0-9]{9}$/,
    "e":/^w+([-+.']w+)*@w+([-.]w+)*.w+([-.]w+)*$/,
    "url":/^(w+://)?w+(.w+)+.*$/
},

将上面的正则添加在后面就可以了!

或者你也可以自己判断,方法如下:

 var reg = new RegExp("(^13[0-9]{9}$|14[0-9]{9}|15[0-9]{9}$|18[0-9]{9}$)|(^0(10|2[0-5789]|\d{3})\d{7,8}$)");
 if(!reg.test(phone_mob)){
        hiAlert('请输入正确的手机号码', '请注意',function(){
        $("#phone_mob").focus();
        });
               return false;
             }

上面代码我运用的是插件,您也可以自己直接用alert,提示!

常用正则列举

//正整数
/^[0-9]*[1-9][0-9]*$/;
//负整数
/^-[0-9]*[1-9][0-9]*$/;
//正浮点数
/^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$/;
//负浮点数
/^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$/;
//浮点数
/^(-?d+)(.d+)?$/;
//email地址
/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/;
//url地址
/^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$/;
或:^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]':+!]*([^""])*$ //年/月/日(年-月-日、年.月.日) /^(19|20)dd[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])$/; //匹配中文字符 /[u4e00-u9fa5]/; //匹配帐号是否合法(字母开头,允许5-10字节,允许字母数字下划线) /^[a-zA-Z][a-zA-Z0-9_]{4,9}$/; //匹配空白行的正则表达式 /ns*r/; //匹配中国邮政编码 /[1-9]d{5}(?!d)/; //匹配身份证 /d{15}|d{18}/; //匹配国内电话号码 /(d{3}-|d{4}-)?(d{8}|d{7})?/; //匹配IP地址 /((2[0-4]d|25[0-5]|[01]?dd?).){3}(2[0-4]d|25[0-5]|[01]?dd?)/; //匹配首尾空白字符的正则表达式 /^s*|s*$/; //匹配HTML标记的正则表达式 ]*>.*?|; //sql 语句 ^(select|drop|delete|create|update|insert).*$ //提取信息中的网络链接 (h|H)(r|R)(e|E)(f|F) *= *('|")?(w|\|/|.)+('|"| *|>)? //提取信息中的邮件地址 w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* //提取信息中的图片链接 (s|S)(r|R)(c|C) *= *('|")?(w|\|/|.)+('|"| *|>)? //提取信息中的 IP 地址 (d+).(d+).(d+).(d+) //取信息中的中国手机号码 (86)*0*13d{9} //提取信息中的中国邮政编码 [1-9]{1}(d+){5} //提取信息中的浮点数(即小数) (-?d*).?d+ //提取信息中的任何数字 (-?d*)(.d+)? //电话区号 ^0d{2,3}$ //腾讯 QQ 号 ^[1-9]*[1-9][0-9]*$ //帐号(字母开头,允许 5-16 字节,允许字母数字下划线) ^[a-zA-Z][a-zA-Z0-9_]{4,15}$ //中文、英文、数字及下划线 ^[u4e00-u9fa5_a-zA-Z0-9]+$


限时特惠:
本站持续每日更新海量各大内部创业课程,一年会员仅需要98元,全站资源免费下载
点击查看详情

站长微信:Jiucxh

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注