精华内容
下载资源
问答
  • email正则表达式
    千次阅读
    2017-04-07 10:33:16

    正则表达式 -- 邮件地址验证解析
    电子邮件验证


          正则表达式(regular expression, 常常缩写为RegExp) 是一种用特殊符号编写的模式,描述一个或多个文本字符串。使用正则表达式匹配文本的模式,这样脚本就可以轻松的识别和操作文本。其实,正则表达式是值得大家花时间学习的。正则表达式不仅在javaScript 中有用,在其他许多地方也可以使用正则表达式,例如其他编程语言(比如Perl,Java,C#,Python 和PHP ),Apache 配置文件以及BBEdit 和TextMate 等文本编辑器。甚至Adobe Dreamweaver 和Microsoft Word( 在一定程度上) 使用正则表达式也可以实现更强大的搜索和替换。

    下面是一个验证电子邮件的正则表达式

    var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/ ;

    下面我们开始剖析这个正则表达式

    re 是一个变量, 用来存储右边的正则表达式,在javascript 中,声明变量使用Var 关键字。

    正则表达式的阅读顺序是从左向右的

    正则表达式总是以(/) 开头和结尾,斜杠之间的所有内容都是正则表达式的组成部分。

    脱字符(^) 表示我们要使用这个表达式来检查以特定字符串开头的字符串。如果去掉脱字符,那么即使字符串开头有一堆垃圾字符,电子邮件地址也可能被认为是有效的。

    表达式\w 表示任意单一字符,包括a~z 、A~Z 、0~9 或下划线。电子邮件必须这些字符之一开头。

    加号+ 表示我们要寻找前面条目的一次或多次出现。

    园括号() 表示一个组,这意味着后面要引用圆括号中的所有内容,所以现在将它们放在一个组中。

          放括号[] 用来表示可以出现其中的任意一个字符。在这个示例中,方括号内包含字符\.- 。我们希望允许用户输入点号或连字符,但是点号对于正则表达式有特殊的意义,所以需要在它前面加上反斜杠\, 在特殊字符前加反斜杠表示“对字符转义”,经转义后的字符表示其本身意义。因为有方括号,输入字符串在这个位置可以有一个点号或一个连字符,但是两种不能同时存在。

          问号?表示前面的条目可以出现一次或不出现。所以电子邮件地址的第一部分中可以有一个点号或一个连字符,也可以没有。

          在?后面,再次使用\w+ ,表示点号或连字符后面必须有其他字符。

    在()后面出现的* 号,表示前面的条目可以出现零次或多次。所以圆括号中的内容可以出现零次或多次。

    @ 字符代表其本身,没有任何其他意义,这个字符位于电子邮件地址和域名之间。

    @ 字符后再次出现\w+ ,表示@ 后必须出现字符。在此之后,再次出现([\.-]?\w+)*, 表示电子邮件地址的后缀中允许出现点号或连字符。

          然后,在一对圆括号中建立另一个组(\.\w{2,3}), 表示我们希望找到一个点号,后面跟一些字符。在这个示例中,花括号中的数字表示前面的条目可以出现2 到3 次。在这个组的后面是一个+ 号,表示前面的条目(这个组)必须出现一次或多次。这会匹配.com 或.edu 之类的,也与ox.ac.uk 匹配。

          最后,正则表达式的末尾是一个美元符号$ ,表示匹配的字符串必须在这里结束。斜杠结束正则表达式。

     

    更多相关内容
  • 说到正则表达式,网上有很多的通用的表达式,可是事实上说来,一般人的都 不愿意去拿来研究,就是拿来就直接用就行了.可是,事实上,可能有些时候,项目中或公司里的实际情况不一样,得要修改一下正则表达式的,根据实际情况...
  • Email正则表达式

    千次阅读 2021-05-18 09:36:44
    Email正则表达式日常整理大全 正则表达式在项目中经常会用到,特别email邮箱验证在注册用户信息时经常是必填项,下面由脚本之家小编给大家分享Email正则表达式日常整理,需要的朋友可以参考下介绍…...

    Email正则表达式日常整理大全

    正则表达式在项目中经常会用到,特别email邮箱验证在注册用户信息时经常是必填项,可以参考下介绍…(https://www.jb51.net/article/72346.htm正则表达式的一些基本用法)
    对email进行验正…允许输入多个email,以;来分隔,然后,在页面 表单中提交时,进行验正,是单个邮件还是多个邮件,是否正确.关于是多个邮件,还是单个邮件我就不多说了,是多个时,只需要用split(";")来生成 一个数组,然后循环对每个email判断是否正确的email格式就行了.这不是小编要谈论的重点,我这里只想说明一下,我这里要验正的情况…

    原来的正则表达式

    复制代码 代码如下:

    /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
    

    我根据我的实际情况修改后的正则表达式
    复制代码 代码如下:

    /^(\w)+(\.\w+)*@(\w)+((\.\w{2,3}){1,3})$/;
    

    或者
    复制代码 代码如下:

    /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/;
    

    字符描述:
    ^ :匹配输入的开始位置。
    \:将下一个字符标记为特殊字符或字面值。

    • :匹配前一个字符零次或几次。
    • :匹配前一个字符一次或多次。
      (pattern) 与模式匹配并记住匹配。
      x|y:匹配 x 或 y。
      [a-z] :表示某个范围内的字符。与指定区间内的任何字符匹配。
      \w :与任何单词字符匹配,包括下划线。

    {n,m} 最少匹配 n 次且最多匹配 m 次
    $ :匹配输入的结尾。
    附一简单的js

    //javascript

    function checkEmail()
    {
    var emailValue=document. getElementById_r("email").value;
    if (!isEmail(emailValue))
    {
    alert("您输入的邮箱有误,请重新核对后再输入!");
    document. getElementById_r("email").focus();
    return false;
    }
    return true;
    }
    function isEmail(str){
     var reg = /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/;
     return reg.test(str);
    }
    

    //验正邮箱格式要正确 20080602_heyitang
    复制代码 代码如下:

     var email=document. getElementById_r("trans_email").value;
    
     //如果,用户入了邮箱才需要进行判断
    
    if (email!=null)
    {if (email.indexOf(";")==-1)
    {
    if(!isEmail(email))
    {
     alert("您输入的单个邮件格式有误,请重新核对后再输入");
     document. getElementById_r("trans_email").focus();
     return false;
    }
    }
    else
    {
    var emailArray=email.split(";");
    for(i=0;i<emailArray.length;i++)
    {
     //这里防止出现heyitang@qq.com;heyitang@163.com;;多加了;这时候,数组中可能有元素没有内容
     if(emailArray[i]!=null || emailArray[i]!="")
     {
     if(!isEmail(emailArray[i]))
     {
     alert("您输入的多个邮箱格式中有邮箱格式不 正确,请重新核对后再输入");
     document. getElementById_r("trans_email").focus();
     return false;
     }
     }
    }
    }
    }
    
    
    
    展开全文
  • 完美完美Email验证正则表达式验证正则表达式域名由各国文字的特定字符集、英文字母、数字及“-”(即连字符或减号)任意组合而成, 但开头及结尾均不能含有“-”,“-”不能连续出现际域名格式如下: 域名由各国文字的...
  • 今天小编就为大家分享一篇Python实现正则表达式匹配任意的邮箱方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • email正则表达式

    万次阅读 2018-07-06 11:03:30
    说到正则表达式,网上有很多的通用的表达式,可是事实上说来,一般人的都 不愿意去拿来研究,就是拿来就直接用就行了.可是,事实上,可能有些时候,项目中或公司里的实际情况不一样,得要修改一下正则表达式的,
    原文地址为: email正则表达式

    说到正则表达式,网上有很多的通用的表达式,可是事实上说来,一般人的都 不愿意去拿来研究,就是拿来就直接用就行了.可是,事实上,可能有些时候,项目中或公司里的实际情况不一样,得要修改一下正则表达式的,根据实际情况来定 制,这就需要我们来认真学习正则表达式的一些写法,拿来主义,在让我们享受丰富的网络共享资源的同时,也给我们带来了惰性,关于正则表达式的一些使用情 况,我就不作多介绍,网上有很多的介绍..( http://blog.sina.com.cn/s/blog_4c925dca01009h1a.html  正则表达式的一些基本用法)

         前段时间,阿堂在项目中就要对email进行验正..允许输入多个email,以;来分隔,然后,在页面 表单中提交时,进行验正,是单个邮件还是多个邮件,是否正确.关于是多个邮件,还是单个邮件我就不多说了,是多个时,只需要用split(";")来生成 一个数组,然后循环对每个email判断是否正确的email格式就行了.这不是阿堂要谈论的重点,我这里只想说明一下,我这里要验正的情况..

        一般的email,形如zhangshan@163.com,abc@sina.com.cn这样一些常用的形式就行了,但是在我们公司的一些客户中邮箱却有一些zhangshna.Mr@163.com,abc_Wang.dd@sian.com,abc_Wang.dd.cc@sian.com这 种类似的形式,在@符号之前还有点.,原来是拿来就用,可是现在就不行,得自己研究正则的用法了

        朋友们,如有正则表达式方面的问题,欢迎在此留言交流讨论!

    原来的正则表达式

    /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;

    我根据我的实际情况修改后的正则表达式

    /^(\w)+(\.\w+)*@(\w)+((\.\w{2,3}){1,3})$/;

    或者

    /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/;

     

    字符描述:
    ^ :匹配输入的开始位置。
    \:将下一个字符标记为特殊字符或字面值。
    * :匹配前一个字符零次或几次。
    + :匹配前一个字符一次或多次。
    (pattern) 与模式匹配并记住匹配。
    x|y:匹配 x 或 y。
    [a-z] :表示某个范围内的字符。与指定区间内的任何字符匹配。
    \w :与任何单词字符匹配,包括下划线。

    {n,m} 最少匹配 n 次且最多匹配 m 次
    $ :匹配输入的结尾。

     

    附一简单的js


     function checkEmail()
     {
      var emailValue=document. getElementById_r("email").value;
      if (!isEmail(emailValue))
      {
       alert("您输入的邮箱有误,请重新核对后再输入!");
       document. getElementById_r("email").focus();
       return false;
      }
      return true;
     }
     
     function isEmail(str){
           var reg = /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/;
           return reg.test(str);
       }

    阿堂也附上了输入多个邮件时的验正方法

     

    //验正邮箱格式要正确 20080602_heyitang
     var email=document. getElementById_r("trans_email").value;
     //如果,用户入了邮箱才需要进行判断

     if (email!=null)
     {if (email.indexOf(";")==-1)
      {
        if(!isEmail(email))
        {
          alert("您输入的单个邮件格式有误,请重新核对后再输入");
          document. getElementById_r("trans_email").focus();
          return false;
        }
      }
      else
      {
        var emailArray=email.split(";");
        for(i=0;i<emailArray.length;i++)
        {
         //这里防止出现heyitang@qq.com;heyitang@163.com;;多加了;这时候,数组中可能有元素没有内容
         if(emailArray[i]!=null || emailArray[i]!="")
         {
           if(!isEmail(emailArray[i]))
           {
            alert("您输入的多个邮箱格式中有邮箱格式不 正确,请重新核对后再输入");
            document. getElementById_r("trans_email").focus();
            return false;
           }
         }
     }
      }
        }


    转载请注明本文地址: email正则表达式
    展开全文
  • 本文实例讲述了jquery使用正则表达式验证email地址的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:<html> <head> <title>jquery使用正则表达式验证email地址</title>...
  • js正则表达式 验证邮箱登入 #emailError { color: red; } [removed] = function() { /* 分析: 0.给提交按钮绑定时间 1.先获取 用户输入框的值 2.写正则表达式 3.用正则表达式...
  • 在注册系统开发中,需要检测用户输入的email地址是否合法,可以在js或者php中检测,但是差别不大,都可以使用正则表达式来检测。 下面是js的一个例子: 代码如下: function validateEmail(email) { var re = /^(([^&...
  •  ///  public class RegexLib { //验证Email地址 public static bool IsValidEmail(string strIn) { // Return true if strIn is in valid e-mail format. return Regex.IsMatch(st
  • 验证email正则表达式 验证email正则表达式源代码,可直接使用
  • javascript中,email正则表达式

    千次阅读 2018-01-13 16:49:31
    javascript中,email正则表达式
    • javascript中,email正则表达式
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
            <title>02-dom中的事件</title>
            <style>
    
            </style>
            <script type="text/javascript">
                //如果检验不符合规则,拦截表单的提交
                function fun1(){
                    var flag=true;
                    if(!check_name()){
                        flag=false;
                    }
                    if(!check_email()){
                        flag=false;
                    }
                    alert(flag);
                    return flag;
                }
                function check_name(){
                    //1:获得文本输入框中的内容
                    //var userName=document.getElementsByName("userName")[0];
                    var userName=document.form1.userName;
                    //DHTML属性
                    var name=userName.value;
                    //2:定义正则表达式对象
                    var reg=/^[a-zA-Z][a-zA-Z0-9_]{5,9}$/g
                    //3:校验
                    if(!reg.test(name)){
                        //校验失败
                        //alert("用户名填写错误");
                        addError(userName,"用户名填写错误");
                        return false;
                    }else{
                        removeError(userName);
                        return true;
                    }
                }
    
                function check_email(){
                    //DHTML属性,以“name”为准,一层一层往下写
                    //var email=document.form1.eMail.value;
                    var userEmail=document.form1.eMail;
                    var email=userEmail.value;
                    var reg=/^([a-z0-9_\.-]+)@([\da-z\.]+)\.([a-z\.]{2,6})$/g;
                    if(!reg.test(email)){
                        //alert("邮箱填写错误");
                        addError(userEmail,"邮箱填写错误");
                        return false;
                    }else{
                        removeError(userEmail);
                        return true;
                    }
                }
    
                function addError(where,what){
                    //where.nextSibling.innerHTML=what;
                    where.nextSibling.innerHTML=what;
                }
    
                function removeError(where){
                    where.nextSibling.innerHTML="";
                }
    
            </script>
        </head>
        <body>
            <form action="#" name="form1" onsubmit="return fun1();">
                <table border="1" width="30%">
                    <tr>
                        <th colspan="2" align="center">
                            用户注册
                        </th>
                    </tr>
                    <tr>
                        <td>用户名</td>
                        <!-- 焦点校验 -->
                        <td><input type="text" name="userName" onblur="check_name();"/><font color="red"></font></td>
                    </tr>
                    <tr>
                        <td>邮 箱</td>
                        <td><input type="text" name="eMail"  onblur="check_email();"/><font color="red"></font></td>
    
                    </tr>
    
                    <tr>
                        <td colspan="2" align="center"><input type="submit" name="submit" value="提交" /></td>
                    </tr>
                </table>
            </form>
        </body>
    </html>
    
    展开全文
  • IP 正则表达式验证

    2020-12-12 21:02:12
    javascript 手机号码正则表达式验证函数JS正则表达式验证数字代码JavaScript正则表达式验证身份证号码是否合法(两种方法)jquery正则表达式验证...邮箱、电话号码示例jquery使用正则表达式验证email地址的方法利用js正则
  • 一、js正则表达式之replace函数用法: 函数功能:replace函数返回根据正则表达式进行文字替换后的字符串的复制。 函数格式:stringObj.replace(rgExp, replaceText) 参数:字符串stringObj,rgExp正则表达式,...
  • 电子邮件正则表达式 匹配电子邮件地址的正则表达式 用它来查找电子邮件地址或检查类似电子邮件的东西。 仅用于提示给​​用户。 安装 $ npm install email-regex 用法 import emailRegex from 'email-regex' ; // ...
  • 使用正则表达式验证E-mail格式,程序完全可以运行,方便大家参考和调试
  • 主要介绍了最严谨的校验email地址的正则表达式及各种语言对应版,本文给出通用、Python、Javascript、PHP、Perl / Ruby、Perl等版本的最严谨的表达式写法,需要的朋友可以参考下
  • 正则表达式(Regular Expression,在代码中常简写为regex、regexp或RE)是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来...
  • * 描述:进行正则表达式匹配,有常用的正则表达式以及允许用户自定义正则表达式进行匹配 */ class regexTool{ //定义常用正则表达式,并用数组对的方式存储 private $validate=array( 'require' => '/.+/', 'email' ...
  • js正则表达式校验数字、email、身份证号等
  • 正则表达式
  • 简言 在做用户注册时,常会用到邮箱/邮件地址的正则表达式。本文列举了几种方案,大家可以根据自己的项目情况,选择最适合的方案。 方案1 (常用) ...利用以上规则给出如下正则表达式: var pattern
  • 前言正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式是对字符串...
  • 在下面输入正则表达式:在下面输入文本(可将文本粘贴到下面的输入框中),然后单击测试正则按钮,即可使用输入的正则表达式匹配文本:匹配结果将显示在下面(若无结果显示,说明匹配不成功,需要调整你的正则表达式。...
  • 后文预告:jQuery中的正则表达式分析 2.4 常用正则表达式 在网上找到一篇广为流传的文章《常用正则表达式》,逐一分析,不足地方进行补充和纠正。 代码如下: 常用的数字正则(严格匹配) 正则 含义 ^[1-9]\d*$ 匹配...
  • 电话 email 正则表达式 大全 有例子和详细的解析
  • 写出与email匹配的正则表达式,并测试该正则表达式的正确性。 方案 首先,分析email正则表达式email正则表达式如下: [a-zA-Z0-9_\.-]+@([a-zA-Z0-9-]+\.)+[a-zA-Z0-9]{2,4} 以上正则表达式可以分成三...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 79,418
精华内容 31,767
关键字:

email正则表达式