溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

js正則表達(dá)式中$1-$9屬性如何返回子匹配的結(jié)果

發(fā)布時間:2021-09-29 09:12:58 來源:億速云 閱讀:106 作者:小新 欄目:互聯(lián)網(wǎng)科技

這篇文章給大家分享的是有關(guān)js正則表達(dá)式中$1-$9屬性如何返回子匹配的結(jié)果的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

功能:$1-$9存放著正則表達(dá)式中最近的9個正則表達(dá)式的匹配結(jié)果,這些結(jié)果按照子匹配的出現(xiàn)順序依次排列。

基本語法RegExp.$n

注意:這些屬性是靜態(tài)的,除了replace中的第二個參數(shù)可以省略RegExp之外,其他地方使用都要加上RegExp。

案例講解:demo1

代碼如下:


<html>
<script language="javascript" type="text/javascript">
//創(chuàng)建要進(jìn)行匹配的字符串
var objStr="這是我的手機(jī)號13100000000"
//創(chuàng)建正則表達(dá)式匹配手機(jī)號碼
var re=/(13)(/d)(/d{8})/;//該正則表達(dá)式可以匹配手機(jī)號碼以13開頭的11為號碼以()為子匹配的標(biāo)志
document.write(objStr.replace(re,"$1$2********"));//處于隱私對字符串按照正則表達(dá)式的內(nèi)容進(jìn)行替換
//如果第二個子匹配結(jié)果,即手機(jī)號碼中的第三位數(shù)字小于等于3則該手機(jī)號為聯(lián)通號碼,否則為其他運(yùn)營商的號碼
if(RegExp.$2<=3){
document.write("這是聯(lián)通手機(jī)號");
}else{
document.write("這是移動或者電信手機(jī)號");
}
</script>
</html>


但是沒進(jìn)行一次匹配$n的值就改變一次,因此當(dāng)我們匹配在一個字符串中出現(xiàn)多個手機(jī)號碼時我們需要這樣匹配

案例講解demo2

代碼如下:


<html>
<script language="javascript" type="text/javascript">
//創(chuàng)建一個需要匹配的字符串
var objStr="這是我的手機(jī)號碼13112345678, 這是我朋友的手機(jī)號碼13912345678";
//創(chuàng)建匹配手機(jī)號碼的正則表達(dá)式對象,隱式創(chuàng)建
var reg=/(13)(/d)(/d{8})/g;//g為全局匹配參數(shù),匹配11位手機(jī)號碼;
//將字符串進(jìn)行匹配如果符合結(jié)果則將返回結(jié)果放入數(shù)組中
var arr=objStr.match(reg);
with(document){
if(arr!=null){//如果匹配有結(jié)果
write("檢測到"+arr.length+"個手機(jī)號碼");//顯示匹配到多少個電話號碼
//循環(huán)輸出各個結(jié)果,并且判斷運(yùn)營商
for(var i=0;i<arr.length;i++){
//對匹配出來的電話號碼進(jìn)行二次匹配,獲取號碼的第三個數(shù)字
arr[i]=arr[i].toString().replace(reg,"$1$2********");
//以列表的形式輸出各個電話號碼
write("<li>"+arr[i]);
//如果第三個電話號碼小于等于3則該電話號碼為聯(lián)通號碼,否則為其他運(yùn)營商的號碼
if(RegExp.$2<=3){
write("這是一個聯(lián)通手機(jī)號碼!");
}else{
write("這是一個移動或者電信手機(jī)號碼!");
}
}//for循環(huán)的結(jié)束
}//if的結(jié)束
}//with的結(jié)束
</script>
</html>

感謝各位的閱讀!關(guān)于“js正則表達(dá)式中$1-$9屬性如何返回子匹配的結(jié)果”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI