在JavaScript中用正则表达式判断邮箱地址

开发工具与关键技术:Visual Studio 2015 JavaScript
作者:宁佐潮
撰写时间:2019.4.7
在注册中有需要用户输入邮箱地址,再输入完后用正则对用户输入的Email邮箱地址进行判断,但是这个时候有一个问题,在这里 @ 符号是C#的,如果直接在JavaScript中使用,那么会报错
在这里插入图片描述

为了解决@特殊符号在JavaScript中无法直接使用,用正则里面的转义也不可以,这个时候需要用ASCLL码来转换一下,然后才能进行判断
在这里插入图片描述

//判断邮箱是否正确
        function Useremailchange() {
            var email = String.fromCharCode(64);//把ASCLL码值转换成符号
            var UseremailNum = $("#Useremail").val();//获取到用户输入的邮箱地址
            console.log(email);
            console.log(UseremailNum);
            if (UseremailNum.match(email) != null) {//判断输入的邮箱地址有@符号
                console.log(UseremailNum.match(email));
                UseremailNum = UseremailNum.replace(email, 64);//把@符号替换成相对应的ASCLL码值
                var IDNumTest = /^\w+([­+.]\w+)64\w+([­.]\w+).\w+([­.]\w+)*$/;//邮箱地址的正则表达式
                if (!IDNumTest.test(UseremailNum)) {
                    layer.alert("邮箱信息有误2,请输入正确的邮箱!", { icon: 0, title: "提示" });
                }
            } else {
                layer.alert("邮箱信息有误1,请输入正确的邮箱!", { icon: 0, title: "提示" });
            }
            console.log(UseremailNum);
        };

首先,我定义一个email,用String.fromCharCode来把相对应的ASCLL码转换成特殊符号@,然后获取到用户输入的邮箱地址,在判断的时候,因为把正则里面的@符号也转换成了对应的ASCLL码64,如果用户输入的邮箱账号中的64而没有@符号,那也会判断是正确的邮箱地址,所以我首先判断用户输入的邮箱地址中是否有@符号,如果没有直接提示用户邮箱信息有误1,请输入正确的邮箱!,如果有@符号就可以继续往下面判断,把用户输入的邮箱地址中的@符号替换成64,然后用正则表达式进行判断,如果错误就提示用户邮箱信息有误2,请输入正确的邮箱!正确则可以继续接下来的系列操作。
下面我用console在控制台输出了下
在这里插入图片描述
如有错误,请指正

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值