正則表達(dá)式對(duì)象方法 test方法
var regexp1 = /a/g; var regexp2 = /a/; var str = "abcd"; regexp1.test(str); true regexp1.test(str); false regexp1.test(str); true regexp2.test(str); true regexp2.test(str); true
當(dāng)正則表示式是全局模式時(shí),每次調(diào)用都會(huì)重置正則表達(dá)式對(duì)象的lastIndex屬性,下一次調(diào)用test方法的時(shí)候,將會(huì)從lastIndex開始查找;非全局模式時(shí),lastIndex屬性始終為0
exec方法var reg = /a/g; var strs = "abcdabcdabcd"; reg.exec(strs); ["a", index: 0, input: "abcdabcdabcd"] reg.exec(strs); ["a", index: 4, input: "abcdabcdabcd"] reg.exec(strs); ["a", index: 8, input: "abcdabcdabcd"] reg.exec(strs); null reg.exec(strs); ["a", index: 0, input: "abcdabcdabcd"] var reg1 = /a/; reg1.exec(strs); ["a", index: 0, input: "abcdabcdabcd"] reg1.exec(strs); ["a", index: 0, input: "abcdabcdabcd"] reg1.exec(strs); ["a", index: 0, input: "abcdabcdabcd"]
當(dāng)正則表示式是全局模式時(shí),每次調(diào)用都會(huì)重置正則表達(dá)式對(duì)象的lastIndex屬性,下一次調(diào)用test方法的時(shí)候,將會(huì)從lastIndex開始查找;非全局模式時(shí),lastIndex屬性始終為0。但是不管正則表達(dá)式是全局模式還是非全局模式,都只返回一個(gè)匹配項(xiàng)的相關(guān)信息,區(qū)別于后面說到的match方法
字符串與正則表達(dá)式相關(guān)的方法 match方法var reg = /a/g; var reg1 = /a/; var strs = "abcdabcdabcd"; strs.match(reg); ["a", "a", "a"] strs.match(reg1); ["a", index: 0, input: "abcdabcdabcd"] strs.match(reg1); ["a", index: 0, input: "abcdabcdabcd"]
當(dāng)正則表示式是全局模式時(shí),會(huì)把所有的匹配項(xiàng)都組成數(shù)組返回來;非全局模式時(shí),只返回匹配的第一項(xiàng)。
search方法var reg = /a/g; var reg1 = /a/; var strs = "abcdabcdabcd"; strs.search(reg); 0 strs.search(reg); 0 strs.search(reg); 0 strs.search(reg1); 0 strs.search(reg1); 0 strs.search(reg1); 0
不管正則表示式是全局模式還是非全局模式,只返回匹配的第一項(xiàng)。
replace方法var reg = /a/g; var reg1 = /a/; var strs = "abcdabcdabcd"; strs.replace(reg, "&"); "&bcd&bcd&bcd" strs.replace(reg1, "&"); "&bcdabcdabcd"
如果正則表示式是全局模式,替換所有匹配的字符串,如果是非全局模式,只替換匹配的第一項(xiàng)。
字符串與正則相關(guān)的三個(gè)方法都不會(huì)改變正則表達(dá)式的屬性,不會(huì)改變lastIndex的值
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/92570.html
摘要:的正則表達(dá)式體系是參照建立的。字面量形式構(gòu)造函數(shù)形式以上都是創(chuàng)建了一個(gè)內(nèi)容為的正則表達(dá)式,其表示對(duì)一個(gè)手機(jī)號(hào)碼的校驗(yàn)。按照給定的正則表達(dá)式進(jìn)行替換,返回替換后的字符串。 正則表達(dá)式,也稱規(guī)則表達(dá)式,經(jīng)常使用其來完成對(duì)字符串的校驗(yàn)和過濾。由于正則表達(dá)式的靈活性、邏輯性和功能性都非常強(qiáng)大,而且 可以利用很簡(jiǎn)單的方式完成對(duì)復(fù)雜字符串的控制,所以很多程序語言都支持正則表達(dá)式。在JavaScri...
摘要:在不設(shè)置全局標(biāo)志的情況下,在同一個(gè)字符創(chuàng)上多次調(diào)用將始終返回第一個(gè)匹配項(xiàng)的信息。 字面量定義正則表達(dá)式 ECMAScript通過RegExp類型來支持正則表達(dá)式 var expression = / pattern / flags:模式(pattern)部分可以是任何簡(jiǎn)單或復(fù)雜的正則表達(dá)式,標(biāo)志(flag)部分用來標(biāo)明正則表達(dá)式的匹配模式 正則表達(dá)式的匹配模式支持下列3個(gè)標(biāo)志: ...
摘要:返回值返回值根據(jù)傳入的參數(shù)類型和規(guī)則的不同,返回的內(nèi)容不同,但總體來說,它是返回一個(gè)對(duì)象,而不是索引,如果沒匹配到任何符合條件的字符串,則返回。 本文發(fā)布在我的博客一道小小的題目引發(fā)對(duì)javascript支持正則表達(dá)式相關(guān)方法的探討許可協(xié)議: 署名-非商業(yè)性使用-禁止演繹 4.0 國(guó)際 轉(zhuǎn)載請(qǐng)保留原文鏈接及作者。 以前對(duì)于正則是非常懼怕的,因?yàn)榭床欢蛯W(xué)不會(huì)。但最近項(xiàng)目中頻繁的...
摘要:事件關(guān)于路由觸發(fā)事件是通過兩個(gè)函數(shù)來完成的,它們分別是和前者會(huì)檢測(cè)路由是否發(fā)生了改變,如果改變了就會(huì)觸發(fā)函數(shù)并調(diào)用函數(shù),而后者會(huì)通過路由片段來找到相關(guān)的事件函數(shù)來觸發(fā)。 注意:強(qiáng)烈建議一邊閱讀源碼一邊閱讀本文。 終于到了backbone源碼解讀的最后一篇,這一篇和前面幾篇時(shí)間上有一定的間隔(因?yàn)橐貙W(xué)校有一堆亂七八糟的事...)。在這一篇里面會(huì)講解Bakcbone的sync & rou...
閱讀 3123·2021-11-24 09:39
閱讀 982·2021-09-07 10:20
閱讀 2403·2021-08-23 09:45
閱讀 2279·2021-08-05 10:00
閱讀 580·2019-08-29 16:36
閱讀 843·2019-08-29 11:12
閱讀 2826·2019-08-26 11:34
閱讀 1847·2019-08-26 10:56