亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

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

    原文符號

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

    有無量詞

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

    非貪婪匹配

    貪婪匹配

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

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

    非貪婪匹配

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

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

    幾個常用的非貪婪匹配Pattern

    *? 重復(fù)任意次,但盡可能少重復(fù)
    +? 重復(fù)1次或更多次,但盡可能少重復(fù)
    ?? 重復(fù)0次或1次,但盡可能少重復(fù)
    {n,m}? 重復(fù)n到m次,但盡可能少重復(fù)
    {n,}? 重復(fù)n次以上,但盡可能少重復(fù)

    不捕捉模式

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

      while(<>){    if(/(?:bronto)(steak|burger)/){      print "Fred wants a $1n" ;    }  }

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號