正则表达式(二)验证邮箱、电话号码

正则表达式的常用例子: E-Mail地址 和手机号码、固定电话号码

验证e-mail邮箱地址

有效的电子邮箱地址基本格式是一串字符(由字母、数字、下划线 、短线“-”、点号“.”组成),紧跟着@符号,最后还有一些字符。
我们都知道在@之前至少有一个字符,其后必须至少有三个字符,这三个字符中第二个还必须是一个点. (a@a.b是有效地址 而a@a 和a@a.都是无效的)
@前后的文本必须符合同样的规则:不能以点.开始或结束,且不能有两个句号连续出现。
因此正则表达式如下:

var reEmail=/^(\w+\.?)*\w+@(?:\w+\.)\w+$/;

这个表达式以非捕获性分组(?:\w+.?)开始,它告诉你任何数量的单词字符可以跟零个或者一个点(.)。这一部分可以出现零次或多次(例如a.b.c.d),所以对这个分组使用星号。
表达式\w+@ 这保证在@之前至少有一个单词符号。然后紧跟一个非捕获性分组(?:\w+.),它可以出现一次或者多次,所以使用加号(+)。最后一部分\w+$,表示一行最后的字符必须式一个单词字符,不允许出现类似的a@b.之类的地址。
封装成函数为:

function isVailEmail (sText){
    var reEmail=/^(\w+\.?)*\w+@(?:\w+\.)\w+$/;
    return reEmail.test(sText);
}
console.log(isVailEmail("a123@164.com"));
console.log(isVailEmail("12.3@164.com"));

验证手机号码

验证规则:11位数,以1开头

function PhoneNum(sText){
    var rePhone = /^1[0-9]{10}/;
    if (rePhone.test(sText)){
        alert("正确输入");
    } else {
        alert("重新输入手机号码");
    }
}
PhoneNum("12345678909");

验证固定号码:

验证规则: 直辖市 三位-八位(010-87651234)
普通市 四位-七位(0517-3160234)

var reTel = /(^0\d{2}-\d{8}$)|(^0\d{3}-\d{7}$)/;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值