javascript正則表達(dá)式標(biāo)記中/g/i/m怎么用

這篇文章主要介紹了javascript正則表達(dá)式標(biāo)記中/g /i /m怎么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括邯鄲網(wǎng)站建設(shè)、邯鄲網(wǎng)站制作、邯鄲網(wǎng)頁制作以及邯鄲網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,邯鄲網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到邯鄲省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

一,js正則標(biāo)志/g,/i,/m說明

1,/g (globle)表示該表達(dá)式將用來在輸入字符串中查找所有可能的匹配,全文查找出現(xiàn)的所有匹配字符,返回的結(jié)果可以是多個。如果不加/g最多只會匹配一個
2,/i (ignorCase)表示匹配的時候不區(qū)分大小寫,
忽略大小寫,注意僅是忽略大小寫,并不忽略全半角。
3,/m (mutiple)表示多行匹配,多行查找什么是多行匹配呢?就是匹配換行符兩端的潛在匹配。影響正則中的^$符號
m 影響 ^、$。
若不指定 m,則:^ 只在字符串的最開頭,$ 只在字符串的最結(jié)尾。即:匹配整個串的開始和結(jié)束
若指定 m,則:^ 在字符串每一行的開頭,$ 在字符串每一行的結(jié)尾。即:匹配每一行的開始和結(jié)束

二,實(shí)例說明

1,/g的用法

<script type="text/javascript"> 
str = "tankZHang (231144)"+ 
"tank ying (155445)"; 
res = str.match(/tank/); //沒有加/g 
alert(res);     //顯示一個tank 

res = str.match(/tank/g); //加了/g 
alert(res);     //顯示為tank,tank 
</script>

2,/i的用法

<script type="text/javascript"> 
str = "tankZHang (231144)"+ "tank ying (155445)"; 
 
res = str.match(/zhang/);  
alert(res);     //顯示為null 
 
res = str.match(/zhang/i); //加了/i 
alert(res);     //顯示為ZHang 
</script>

3,/m的用法

<script type="text/javascript"> 
var p = /$/mg; 
var s = '1\n2\n3\n4\n5\n6'; 
alert(p.test(s)); //顯示為true 
alert(RegExp.rightContext.replace(/\x0A/g, '\\a')); //顯示\a2\a3\a4\a5\a6 
alert(RegExp.leftContext); //顯示為豎的2345 
alert(RegExp.rightContext); //顯示為6 
 
var p = /$/g; 
var s = '1\n2\n3\n4\n5\n6'; 
alert(p.test(s)); //顯示為true 
alert(RegExp.rightContext.replace(/\x0A/g, '\\a')); //什么都不顯示 
alert(RegExp.leftContext); //顯示為豎的123456 
alert(RegExp.rightContext); //什么都不顯示 
 
var p = /^/mg; 
var s = '1\n2\n3\n4\n5\n6'; 
alert(p.test(s)); //顯示為true 
alert(RegExp.rightContext.replace(/\x0A/g, '\\a')); //顯示為1\a2\a3\a4\a5\a6 
alert(RegExp.leftContext);  //顯示為豎的12345 
alert(RegExp.rightContext); //顯示為6 
</script>

//從上例中可以看出/m影響的^$的分割方式

上面說的三個例子,/i,/g,/m分開來說的,可以排列組合使用的。個人覺得/m沒有多大用處

補(bǔ)充說明:

\n匹配一個換行符。等價于 \x0a 和 \cJ

rightContext

RegExp.rightContext ($')

該特性是非標(biāo)準(zhǔn)的,請盡量不要在生產(chǎn)環(huán)境中使用它!

rightContext 非標(biāo)準(zhǔn)屬性是正則表達(dá)式的靜態(tài)和只讀屬性,含有最新匹配的右側(cè)子串。 RegExp.$' 是這個屬性的別名。

語法

RegExp.rightContext
RegExp["$'"]

描述
rightContext 屬性是靜態(tài)的,不是正則表達(dá)式獨(dú)立對象的屬性。反之,你應(yīng)始終將其使用為 RegExp.rightContext 或者 RegExp["$'"]。

rightContext 屬性的值是只讀的,并且會在匹配成功時修改。

你不能使用屬性訪問器(RegExp.$')來使用簡寫的別名,因?yàn)榻馕銎髟谶@里會將其看做字符串的開始,并拋出 SyntaxError。使用 方括號符號來訪問屬性。

示例
使用 rightContext 和 $'

var re = /hello/g;
re.test('hello world!');
RegExp.rightContext; // " world!"
RegExp["$'"]; // " world!"

leftContext 非標(biāo)準(zhǔn)屬性是正則表達(dá)式的靜態(tài)和只讀屬性,含有最新匹配的左側(cè)子串。 RegExp.$` 是這個屬性的別名。

語法

RegExp.leftContext
RegExp['$`']

描述

leftContext 屬性是靜態(tài)的,不是正則表達(dá)式獨(dú)立對象的屬性。反之,你應(yīng)始終將其使用為 RegExp.leftContext 或者 RegExp['$`']。
leftContext 屬性的值是只讀的,并且會在匹配成功時修改。

你不能使用屬性訪問器(RegExp.$`)來使用簡寫的別名,因?yàn)榻馕銎髟谶@里會將其看做模板字符串的開始,并拋出 SyntaxError 。使用 方括號符號來訪問屬性。

示例
使用 leftContext 和 $`

var re = /world/g;
re.test('hello world!');
RegExp.leftContext; // "hello "
RegExp['$`']; // "hello "

規(guī)范

非標(biāo)準(zhǔn)。并不是任何現(xiàn)行規(guī)范的一部分。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“javascript正則表達(dá)式標(biāo)記中/g /i /m怎么用”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

文章題目:javascript正則表達(dá)式標(biāo)記中/g/i/m怎么用
網(wǎng)頁網(wǎng)址:http://muchs.cn/article26/pgoecg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、微信小程序小程序開發(fā)、做網(wǎng)站、標(biāo)簽優(yōu)化、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化