caoporm97国产在线视频|欧美性XXXXX精品|一本一道久久a久久精品综合开|精品久久久久久久久久久AⅤ|

十年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開(kāi)發(fā)_APP開(kāi)發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號(hào) 掃一掃關(guān)注
小程序
tel-icon全國(guó)服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開(kāi)百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

RegExp構(gòu)造函數(shù)屬性及簡(jiǎn)單應(yīng)用

百恒網(wǎng)絡(luò) 2012-03-29 5403

RegExp構(gòu)造函數(shù)包含一些屬性(這些屬性在其他語(yǔ)言中被看成是靜態(tài)屬性)。這些屬性適用于作用域中的所有正則表達(dá)式,并且基于所執(zhí)行的最近一次正則表達(dá)式操作而變化。關(guān)于這些屬性的另一個(gè)獨(dú)特之處,就是可以通過(guò)兩種方式訪問(wèn)它們。換句話說(shuō),這些屬性分別有一個(gè)長(zhǎng)屬性名和一個(gè)短屬性名(Opera是例外,它不支持短屬性名)。下表列出了RegExp構(gòu)造函數(shù)的屬性。

使用這些屬性可以從exec()或test()執(zhí)行的操作中提取出更具體的信息。請(qǐng)看下面的例子:

var text="this has been a short summer";

var pattern=/(.)hort/g;

/*

*注意:Opera不支持input、lastMatch、lastParen和multiline屬性

*Internet Explorer不支持multiline屬性

*/

if (pattern.test(text)){

alert(RegExp.input); //this has been a short summer

alert(RegExp.leftContext); ,/this has been a

alert (RegExp.rightContext); // summer

alert (RegExp.lastMatch); //short

alert (RegExp.lastParen); //s

alert (RegExp.multiline); //false

}

以上代碼創(chuàng)建了一個(gè)模式,匹配任何一個(gè)字符后跟hort,而且把第一個(gè)字符放在了一個(gè)捕獲組中。RegExp構(gòu)造函數(shù)的各個(gè)屬性返回了下列值:

◎input屬性返回了原始字符串;

leftContext屬性返回了單詞short之前的字符串,而rightContext屬性則返回了short之后的字符串;

lastMatch屬性返回最近一次與整個(gè)正則表達(dá)式匹配的字符串,即short;

lastParen屬性返回最近一次匹配的捕獲組,即例子中的s。

如前所述,例子使用的長(zhǎng)屬性名都可以用相應(yīng)的短屬性名來(lái)代替。只不過(guò),由于這些短屬性名大都不是有效的ECMAScript標(biāo)識(shí)符,因此必須通過(guò)方括號(hào)語(yǔ)法來(lái)訪問(wèn)它們,如下所示:

var text='fthis has been a short summer":

var pattern=,(.)hort/g;

/*

南昌建網(wǎng)站公司前端開(kāi)發(fā)工程師提醒廣大站長(zhǎng)應(yīng)該注意:Opera不支持input、lastMatch、lastParen和multiline屬性

*Internet Explorer不支持multiline屬性

*/

if (pattern. test(text)){

alert(RegExp.$_); //this has been a short summer

alert(RegExp[$ "); //this has been a

alert(RegExp["$'"); //summer

alert(RegExp["$&"); //short alert(RegExp["$+"]); //s

alert(RegExp["$*"])}; //false

}

除了上面介紹的幾個(gè)屬性之外,還有多達(dá)9個(gè)用于存儲(chǔ)捕獲組的構(gòu)造函數(shù)屬性。訪問(wèn)這些屬性偽語(yǔ)法是RegExp.$1、RegExp. $2 "'RegExp. $9,分別用于存儲(chǔ)第一、第二……第九個(gè)匹配的捕獲組.在調(diào)用exec()或test()方法時(shí),這些屬性會(huì)被自動(dòng)填充。然后,我們就可以像下面這樣來(lái)使用它們:

var text="this has been a short summer";

var pattern=/(..)or(.)/g;

if (pattern.test (text)){

alert (RegExp,$l); //sh

alert (RegExp.$2); //t

}

這里創(chuàng)建了一個(gè)包含兩個(gè)捕獲組的模式,并用該模式測(cè)試了一個(gè)字符串。即使test()方法只返回一個(gè)布爾值,但RegExp構(gòu)造函數(shù)的屬性$1和$2也會(huì)被匹配相應(yīng)捕獲組的字符串自動(dòng)填充。

希望本文對(duì)廣大站長(zhǎng)或從事企業(yè)網(wǎng)站建設(shè)公司的團(tuán)隊(duì)有所幫助,如對(duì)此不太理解的,可以與南昌網(wǎng)絡(luò)公司百恒網(wǎng)絡(luò)技術(shù)部聯(lián)系。我們很高興與廣大站長(zhǎng)和從事企業(yè)網(wǎng)站建設(shè)公司技術(shù)人員分享我們的技術(shù)和經(jīng)驗(yàn)。


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開(kāi)百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠(chéng)為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×