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