佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 正則表達(dá)式問號的四種用法詳解

正則表達(dá)式問號的四種用法詳解

熱門標(biāo)簽:Mysql連接數(shù)設(shè)置 銀行業(yè)務(wù) 服務(wù)器配置 Linux服務(wù)器 阿里云 科大訊飛語音識別系統(tǒng) 電子圍欄 團(tuán)購網(wǎng)站

原文符號

因?yàn)?#63;在正則表達(dá)式中有特殊的含義,所以如果想匹配?本身,則需要轉(zhuǎn)義,\&;

有無量詞

問號可以表示重復(fù)前面內(nèi)容的0次或一次,也就是要么不出現(xiàn),要么出現(xiàn)一次。

非貪婪匹配

貪婪匹配

在滿足匹配時(shí),匹配盡可能長的字符串,默認(rèn)情況下,采用貪婪匹配

string pattern1 = @"a.*c";  // greedy match 
Regex regex = new Regex(pattern1);
regex.Match("abcabc"); // return "abcabc"

非貪婪匹配

在滿足匹配時(shí),匹配盡可能短的字符串,使用?來表示非貪婪匹配

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)閉圓括號的捕獲能力?而只是用它來做分組,方法是在左括號的后邊加上:?,這里第一個(gè)圓括弧只是用來分組,而不會占用捕獲變量,所以$1的內(nèi)容只能是steak或者burger,而永遠(yuǎn)不可能是bronto。

while(>){
  if(/(?:bronto)(steak|burger)/){
    print "Fred wants a $1\n" ;
  }
}
您可能感興趣的文章:
  • C#正則表達(dá)式之Regex類用法詳解
  • JS正則表達(dá)式基本用法(經(jīng)典全)
  • linux grep正則表達(dá)式與grep用法詳解
  • js正則表達(dá)式test()和exec()用法實(shí)例
  • js正則表達(dá)式中的問號幾種用法小結(jié)
  • Python中正則表達(dá)式的用法實(shí)例匯總
  • 正則表達(dá)式中的"g"是什么意思附件參數(shù)g的用法
  • 正則表達(dá)式常用用法匯總

標(biāo)簽:江蘇 衡水 廣元 衢州 萍鄉(xiāng) 蚌埠 大理 棗莊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《正則表達(dá)式問號的四種用法詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    唐河县| 安图县| 鹿邑县| 平利县| 霞浦县| 睢宁县| 南涧| 嵊泗县| 清徐县| 平果县| 浠水县| 芜湖县| 河津市| 获嘉县| 永靖县| 台南县| 云南省| 甘孜县| 孝义市| 乌兰察布市| 高阳县| 张掖市| 武威市| 太湖县| 甘孜县| 新竹市| 九江市| 怀远县| 东兰县| 梧州市| 天台县| 六枝特区| 封开县| 扎囊县| 海口市| 德江县| 汉阴县| 武山县| 阿合奇县| 瑞丽市| 四子王旗|