主頁 > 知識庫 > js正則表達(dá)式之exec方法講解

js正則表達(dá)式之exec方法講解

熱門標(biāo)簽:山東外呼系統(tǒng)聯(lián)系方式 浙江營銷外呼系統(tǒng)有哪些 惠安地圖標(biāo)注 遼寧秒客來電話機(jī)器人 哈爾濱公司外呼系統(tǒng)代理 自己做的電銷機(jī)器人 上海銷售電銷機(jī)器人軟件 地圖標(biāo)注店鋪地圖標(biāo)注酒店 淄博市張店區(qū)地圖標(biāo)注

功能說明:該函數(shù)通過對指定你的字符串進(jìn)行一次匹配檢測,獲取字符串中的第一個與正則表達(dá)式的內(nèi)容,并且將匹配的內(nèi)容和子匹配的結(jié)果存放在返回?cái)?shù)組中

基本方法:objReg.exec(string)

objReg,RegExp對象的名稱

string,要進(jìn)行匹配的字符串

正則表達(dá)式exec()函數(shù):

exec() 方法用于檢索字符串中的正則表達(dá)式的匹配。
返回值是一個數(shù)組,但是此數(shù)組的內(nèi)容和正則對象是否是全局匹配有著很大關(guān)系:

1.沒有g(shù)修飾符:
在非全局匹配模式下,此函數(shù)的作用和match()函數(shù)是一樣的,只能夠在字符串中匹配一次,如果沒有找到匹配的字符串,那么返回null,否則將返回一個數(shù)組,數(shù)組的第0個元素存儲的是匹配字符串,第1個元素存放的是第一個引用型分組(子表達(dá)式)匹配的字符串,第2個元素存放的是第二個引用型分組(子表達(dá)式)匹配的字符串,依次類推。同時此數(shù)組還包括兩個對象屬性,index屬性聲明的是匹配字符串的起始字符在要匹配的完整字符串中的位置,input屬性聲明的是對要匹配的完整字符串的引用。
特別說明:
在非全局匹配模式下,IE瀏覽器還會具有l(wèi)astIndex屬性,不過這時是只讀的。

2.具有g(shù)修飾符:
在全局匹配模式下,此函數(shù)返回值同樣是一個數(shù)組,并且也只能夠在字符串中匹配一次。不過此時,此函數(shù)一般會和lastIndex屬性匹配使用,此函數(shù)會在lastIndex屬性指定的字符處開始檢索字符串,當(dāng)exec()找到與表達(dá)式相匹配的字符串時,在匹配后,它將lastIndex 屬性設(shè)置為匹配字符串的最后一個字符的下一個位置。可以通過反復(fù)調(diào)用exec()函數(shù)遍歷字符串中的所有匹配,當(dāng)exec()函數(shù)再也找不到匹配的文本時,它將返回null,并把lastIndex 屬性重置為0。
數(shù)組的內(nèi)容結(jié)構(gòu)和沒有g(shù)修飾符時完全相同。

特別說明:

如果在一個字符串中完成了一次模式匹配之后要開始檢索新的字符串,就必須手動地把lastIndex屬性重置為0。
語法結(jié)構(gòu):

RegExpObject.exec(string)

參數(shù)列表如下:

參數(shù)名稱 語義解釋
string 必需。要檢索的字符串。

瀏覽器支持:

IE瀏覽器支持此方法。
火狐瀏覽器支持此方法。
谷歌瀏覽器支持此方法。

實(shí)例代碼:

實(shí)例一:

var str="I love antzone ,this is animate"; 
var reg=/an/;
console.log(reg.exec(str));

實(shí)例二:

var str="the name 123 and 456"; 
var reg=/\d/g;
reg.lastIndex=15;
console.log(reg.exec(str));

在全局模式下可以使用lastIndex屬性設(shè)置在字符串中查找指定字符時開始的位置。

html> 
script language="javascript" type="text/javascript"> 
//設(shè)置匹配的字符串 
var objStr="我的手機(jī)號13522222222,他的手機(jī)號13288888888,她的手機(jī)號碼13699999999"; 
//設(shè)置正則表達(dá)式,匹配以13開頭11位字符串,全局匹配 
var reg=/13(/d)(/d{8})/g; 
//執(zhí)行exec函數(shù),盡管是全局匹配的正則表達(dá)式,但是exec方法只對指定的字符串進(jìn)行一次匹配,獲取字符串中第一個與正則表達(dá)式想匹配的內(nèi)容,并且將匹配內(nèi)容和子匹配的結(jié)果存儲到返回的數(shù)組中 
var arr=reg.exec(objStr); 
//循環(huán)輸出結(jié)果 
for(var i=0;iarr.length;i++){ 
document.write("li>"+arr[i]+"br>"); 
} 
/script> 
/html> 

您可能感興趣的文章:
  • 全面解析JS字符串和正則表達(dá)式中的match、replace、exec等函數(shù)
  • js正則表達(dá)式中exec用法實(shí)例
  • 在JavaScript的正則表達(dá)式中使用exec()方法
  • js正則表達(dá)式test()和exec()用法實(shí)例
  • js正則表達(dá)式中test,exec,match方法的區(qū)別說明
  • 使用JS中的exec()方法構(gòu)造正則表達(dá)式驗(yàn)證

標(biāo)簽:西安 無錫 綿陽 宣城 泰州 長沙 重慶 銅川

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《js正則表達(dá)式之exec方法講解》,本文關(guān)鍵詞  正則,表達(dá)式,之,exec,方法,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《js正則表達(dá)式之exec方法講解》相關(guān)的同類信息!
  • 本頁收集關(guān)于js正則表達(dá)式之exec方法講解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章