JavaScript 正则表达式 string.replace( regex, "$1" );中“$1”的含义 及邮箱正则表达式

Posted TZB_007

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 正则表达式 string.replace( regex, "$1" );中“$1”的含义 及邮箱正则表达式相关的知识,希望对你有一定的参考价值。

   在使用javascrip正则表达式时,发现可以根据正则表达式取字符串内的特定字符串的内容。举例说明:

<!DOCTYPE html>
<html>
<head>
<meta charset="GB2312" />
<title>电子邮件地址验证程序</title>
<script language="javascript" type="text/javascript">

    function check( email_address )
    {
        var regex = /^([0-9A-Za-z\-_\.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/g;
        if ( regex.test( email_address ) )
        {
            
            var user_name = email_address.replace( regex, "$1" );
            var domain_name = email_address.replace( regex, "$2" );
            var alert_string = "您输入的电子邮件地址合法\n\n";
            alert_string += "用户名:" + user_name + "\n";
            alert_string += "域名:" + domain_name;
            window.alert( alert_string );
            return true;
        }
        else
        {
            window.alert( "您输入的电子邮件地址不合法" );
            return false;
        }
    }
</script>
</head>
<body style="text-align: center;">
<h1>电子邮件地址验证程序</h1>
请输入电子邮件地址:<input id="email_address" type="text" style="width: 300px;" /><br />
<input type="button" value="验证电子邮件地址" onclick="return check(document.getElementById(‘email_address‘).value);" />
</body>
</html>

在例子中,var user_name = email_address.replace( regex, "$1" );对邮箱地址中的用户名进行了截取。“$1”表示的是^([0-9A-Za-z\-_\.]+)

“$1”表示的是组引用,$1表示引用前面匹配到的第一组字符串;

 

以上是关于JavaScript 正则表达式 string.replace( regex, "$1" );中“$1”的含义 及邮箱正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 中使用正则表达式

Javascript 的哪些 Javascript 正则表达式功能是 Javascript 独有的?

Javascript正则表达式

JavaScript之基础-10 JavaScript 正则表达式(概述定义正则RegExp对象用于模式匹配的String方法)

JavaScript中的正则表达式

JavaScript 正则表达式