JS正則表達(dá)式修飾符中multiline(/m)用法分析
本文實(shí)例分析了JS正則表達(dá)式修飾符中multiline(/m)用法。分享給大家供大家參考,具體如下:
JavaScript正則表達(dá)式有3種修飾符/i、/m和/g。/i是我們最常用,也是最好理解的,代表正則表達(dá)式匹配的時(shí)候不區(qū)分大小寫(xiě)。
var regex = /abc/i;
alert(regex.test("aBc"));//true
/m代表多行模式multiline,如果目標(biāo)字符串中不含有換行符\n,即只有一行,那么/m修飾符沒(méi)有任何意義。
var multiline = /abc/m; var singleline = /abc/; //目標(biāo)字符串不含換行符\n var target = "abcabcabc";
如果正則表達(dá)式中不含有^或$匹配字符串的開(kāi)頭或結(jié)尾,那么/m修飾符沒(méi)有任何意義。
//正則表達(dá)式不含^或$ var multiline = /abc/m; var singleline = /abc/; var target = "abcab\ncabc";
也就是說(shuō)只有當(dāng)目標(biāo)字符串含有\(zhòng)n,而且正則表達(dá)式中含有^或$的時(shí)候,/m修飾符才有作用。如果 multiline 為 false,那么“^”與字符串的開(kāi)始位置相匹配,而“$”與字符串的結(jié)束位置相匹配。 如果 multiline 為 true,那么“^”與字符串開(kāi)始位置以及“\n”或“\r”之后的位置相匹配,而“$”與字符串結(jié)束位置以及“\n”或“\r”之前的位置相匹配。
var mutiline = /^abc/m; var singleline = /^abc/; var target = "ef\r\nabcd"; alert(mutiline.test(target));//true alert(singleline.test(target));//false
\r\n在windows下代表?yè)Q行,如果只有1個(gè)\n也是一樣的效果。由于target不是以abc開(kāi)頭的字符串,所以匹配singleline的結(jié)果是false;由于target是多行字符串(含有\(zhòng)n),而第2行是以abc開(kāi)頭,所以匹配multiline結(jié)果是true。
PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線測(cè)試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《JavaScript正則表達(dá)式技巧大全》、《JavaScript替換操作技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript中json操作技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- javascript正則表達(dá)式模糊匹配IP地址功能示例
- JS正則表達(dá)式之非捕獲分組用法實(shí)例分析
- js正則表達(dá)式最長(zhǎng)匹配(貪婪匹配)和最短匹配(懶惰匹配)用法分析
- JS正則表達(dá)式修飾符global(/g)用法分析
- JS前向后瞻正則表達(dá)式定義與用法示例
- js正則表達(dá)式實(shí)現(xiàn)數(shù)字每隔四位用空格分隔代碼
- JS經(jīng)典正則表達(dá)式筆試題匯總
- js正則函數(shù)match、exec、test、search、replace、split使用介紹集合
- JS正則表達(dá)式大全(整理詳細(xì)且實(shí)用)
- JS利用正則配合replace替換指定字符
- js正則表達(dá)式的使用詳解
- js中過(guò)濾特殊字符的正則表達(dá)式
- JavaScript正則表達(dá)式exec/g實(shí)現(xiàn)多次循環(huán)用法示例
相關(guān)文章
javascript 禁止復(fù)制網(wǎng)頁(yè)
常見(jiàn)的一些禁止復(fù)制網(wǎng)頁(yè)的代碼,但破解方法也不見(jiàn)容易,這里就不說(shuō)了,可以看本站以前發(fā)布的文章。2009-06-06
ListBox實(shí)現(xiàn)上移,下移,左移,右移的簡(jiǎn)單實(shí)例
這篇文章主要介紹了ListBox實(shí)現(xiàn)上移,下移,左移,右移的簡(jiǎn)單實(shí)例。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02
webpack file-loader和url-loader的區(qū)別
這篇文章主要介紹了webpack file-loader和url-loader的區(qū)別,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01
javascript實(shí)現(xiàn)簡(jiǎn)單倒計(jì)時(shí)效果
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)倒計(jì)時(shí)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
有趣的思路~~JS仿 WINXP 注銷(xiāo)桌面漸隱效果
有趣的思路~~JS仿 WINXP 注銷(xiāo)桌面漸隱效果...2006-10-10

