正則表達(dá)式問(wèn)號(hào)的四種用法詳解
原文符號(hào)
因?yàn)?#63;在正則表達(dá)式中有特殊的含義,所以如果想匹配?本身,則需要轉(zhuǎn)義,\?
有無(wú)量詞
問(wèn)號(hào)可以表示重復(fù)前面內(nèi)容的0次或一次,也就是要么不出現(xiàn),要么出現(xiàn)一次。
非貪婪匹配
貪婪匹配
在滿足匹配時(shí),匹配盡可能長(zhǎng)的字符串,默認(rèn)情況下,采用貪婪匹配
string pattern1 = @"a.*c"; // greedy match
Regex regex = new Regex(pattern1);
regex.Match("abcabc"); // return "abcabc"
非貪婪匹配
在滿足匹配時(shí),匹配盡可能短的字符串,使用?來(lái)表示非貪婪匹配
string pattern1 = @"a.*?c"; // non-greedy match
Regex regex = new Regex(pattern1);
regex.Match("abcabc"); // return "abc"
幾個(gè)常用的非貪婪匹配Pattern
*? 重復(fù)任意次,但盡可能少重復(fù)
+? 重復(fù)1次或更多次,但盡可能少重復(fù)
?? 重復(fù)0次或1次,但盡可能少重復(fù)
{n,m}? 重復(fù)n到m次,但盡可能少重復(fù)
{n,}? 重復(fù)n次以上,但盡可能少重復(fù)
不捕捉模式
如何關(guān)閉圓括號(hào)的捕獲能力?而只是用它來(lái)做分組,方法是在左括號(hào)的后邊加上:?,這里第一個(gè)圓括弧只是用來(lái)分組,而不會(huì)占用捕獲變量,所以$1的內(nèi)容只能是steak或者burger,而永遠(yuǎn)不可能是bronto。
while(<>){
if(/(?:bronto)(steak|burger)/){
print "Fred wants a $1\n" ;
}
}
相關(guān)文章
比較常用的幾個(gè)正則表達(dá)式匹配數(shù)字(收藏)
正則表達(dá)式用于字符串處理、表單驗(yàn)證等場(chǎng)合,實(shí)用高效。今天小編給大家分享比較常用的幾個(gè)正則表達(dá)式匹配數(shù)字,需要的朋友參考下2017-03-03
JS正則表達(dá)式字面量和使用new RegExp構(gòu)造函數(shù)創(chuàng)建的正則表達(dá)式有什么區(qū)別
以前看到很多文章都說(shuō) 字面量 會(huì)比 new 對(duì)象 形式效率高,但是在正則這里,好像不是這么回事,對(duì)于復(fù)雜類(lèi)的替換還是用new 來(lái)寫(xiě)出來(lái)。前提也得把正則優(yōu)化好2007-05-05
一個(gè)好用的正則匹配電話號(hào)手機(jī)號(hào)郵箱網(wǎng)址的方法
找到一個(gè)好用的正則匹配電話和手機(jī)號(hào)的方法,感謝,在這里分享一下2014-05-05
正則表達(dá)式小腳本(對(duì)輸入內(nèi)容進(jìn)行處理)
該小腳本實(shí)現(xiàn)的是對(duì)輸入框內(nèi)容中取出<img>標(biāo)簽中的src中的內(nèi)容,然后在原來(lái)位置進(jìn)行替換內(nèi)容,然后在去除輸入內(nèi)容中的html標(biāo)簽,空格等操作2016-12-12
正則表達(dá)式中關(guān)于對(duì)原生字符串的簡(jiǎn)單理解
正則表達(dá)式即使用一個(gè)字符串來(lái)描述、匹配一系列某個(gè)語(yǔ)法規(guī)則的字符串,下面這篇文章主要給大家介紹了關(guān)于正則表達(dá)式中關(guān)于對(duì)原生字符串的簡(jiǎn)單理解,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08
半小時(shí)精通正則表達(dá)式 經(jīng)典實(shí)例介紹
想必很多人都對(duì)正則表達(dá)式都頭疼.今天,我以我的認(rèn)識(shí),加上網(wǎng)上一些文章,希望用常人都可以理解的表達(dá)方式.來(lái)和大家分享學(xué)習(xí)經(jīng)驗(yàn)2012-09-09
js中的正則表達(dá)式入門(mén)(大量實(shí)例代碼)
正則表達(dá)式(regular expression)描述了一種字符串匹配的模式,可以用來(lái)檢查一個(gè)字符串是否含有某種子串、將匹配的子串做替換或者從某個(gè)字符串中取出符合某個(gè)條件的子串等2020-04-04

