JS正則表達(dá)式詳解與同時(shí)寫表示什么意思-創(chuàng)新互聯(lián)

JS正則表達(dá)式詳解與同時(shí)寫表示什么意思,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

創(chuàng)新互聯(lián)公司成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)制作、成都做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元濱海新區(qū)做網(wǎng)站,已為上家服務(wù),為濱海新區(qū)各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575

對(duì)于初學(xué)正則的同學(xué)來說,^$這兩個(gè)看似簡(jiǎn)單的字符卻在使用中總讓匹配結(jié)果超出我們的預(yù)期,^什么時(shí)候表示行首什么時(shí)候表示反義?^$兩個(gè)一起寫表示什么含義?今天我們就來詳細(xì)聊聊這兩個(gè)字符。

關(guān)于^與$什么意思

先解釋^與$概念,很簡(jiǎn)單的兩句話,先留個(gè)印象。

^脫字符:匹配開頭,若存在多行匹配多行的行頭。

$美元符:匹配尾部,若存在多行匹配多行的尾部。

我們知道正則是一種匹配模式,要么匹配字符,要么匹配位置。這里我們得從這兩種匹配情況分別解釋這兩個(gè)字符。

從匹配字符角度看什么意思

當(dāng)用于匹配字符時(shí),^與$更多是作為匹配出精準(zhǔn)結(jié)果的輔助條件,我們先看個(gè)簡(jiǎn)單的例子:

'123'.match(/\d/g);//[1,2,3]

很好理解,全局(注意結(jié)尾有個(gè)g)匹配單個(gè)任意數(shù)字,很明顯1,2,3都符合條件,所以這里找到了三個(gè)匹配結(jié)果;我們分別添加^與$再看:

'123'.match(/^\d/g);//[1]

'123'.match(/\d$/g);//[3]

此時(shí)^\d只能匹配到1,而\d$只能匹配到3,你肯定就納悶了,不對(duì)啊,我正則后面不是有個(gè)g表示全局匹配嗎,怎么只匹配一個(gè)了呢?以^\d為例,此時(shí)的匹配條件其實(shí)是找開頭位置后的一個(gè)任意數(shù)字,\d$表示匹配結(jié)尾前的一個(gè)任意數(shù)字。開頭和結(jié)果對(duì)于一個(gè)不換行的字符串都只有一個(gè),所以自然只能找到一個(gè)數(shù)字了,現(xiàn)在能理解前面所說的^$作為輔助條件的意思了嗎。

那么我們現(xiàn)在將數(shù)字換行,再看:

'12\n34'.match(/^\d/mg);//[1,3]

'12\n34'.match(/\d$/mg);//[2,4]

由于存在換行,導(dǎo)致現(xiàn)在有兩個(gè)開頭位置和兩個(gè)結(jié)尾位置(注意匹配中使用了m,表示換行匹配),所以匹配結(jié)果也變成了兩個(gè),不難理解吧。

2.從匹配位置角度

正則除了根據(jù)規(guī)則匹配對(duì)應(yīng)的字符,還有一個(gè)強(qiáng)大的功能就是匹配位置。什么是位置呢?以字符1234為例,每個(gè)箭頭都代表一個(gè)位置,其中第一個(gè)箭頭的位置就是脫字符^,結(jié)果位置就是美元符$,如下圖:

所以當(dāng)我們?cè)谄ヅ湮恢脮r(shí),^$也成為了我們需要匹配的結(jié)果,例如,我需要將1234首尾位置加上花朵:

'1234'.replace(/^|$/g,'?');//"?1234?"

當(dāng)然,在匹配位置時(shí)^與$也是幫助我們精確位置的輔助條件,比如常用的千位分隔符正則:

'12345678'.replace(/(?!^)(?=(\d{3})+$)/g,',');//"12,345,678"

看完上述內(nèi)容,你們掌握J(rèn)S正則表達(dá)式詳解與同時(shí)寫表示什么意思的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

網(wǎng)頁名稱:JS正則表達(dá)式詳解與同時(shí)寫表示什么意思-創(chuàng)新互聯(lián)
路徑分享:http://muchs.cn/article36/hejpg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)品牌網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、小程序開發(fā)、營(yíng)銷型網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)

廣告

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

營(yíng)銷型網(wǎng)站建設(shè)