<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Ordinary hut

    人間一福地,勝似天仙宮
    posts - 61, comments - 50, trackbacks - 0, articles - 1

    正則表達(dá)式中的貪婪、惰性和支配量詞

    Posted on 2009-10-30 16:13 landor 閱讀(503) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 正則
    正則表達(dá)式中有三個(gè)量詞:貪婪、惰性、支配,記錄一下我對(duì)貪婪和惰性的理解
    1 貪婪:一下子打算匹配整個(gè)字符串,如果發(fā)現(xiàn)不匹配,就去掉最后一個(gè)字符,進(jìn)行匹配,以此類(lèi)推。一旦匹配成功之后,并不是馬上返回,而是跳躍到下一個(gè)字符的起點(diǎn),再次開(kāi)始貪婪的匹配,舉個(gè)例子:
        public static void main(String []args) {
            String str
    ="1abbbaabbbaaabbb1234abbbc"
            Pattern p2 
    = Pattern.compile("[^1]*bbb");
            Matcher m2 
    =p2.matcher(str);
            
    while(m2.find()){
                System.out.println(m2.group());
            }
        }
    他的執(zhí)行過(guò)程應(yīng)該是這樣:
      先找到滿(mǎn)足條件的第一個(gè)字符,所以1會(huì)被過(guò)濾掉,然后進(jìn)行全局匹配
      abbbaabbbaaabbb1234abbbc  不匹配
      abbbaabbbaaabbb1234abbb   不匹配
      abbbaabbbaaabbb1234abb    不匹配
      

      abbbaabbbaaabbb          匹配
      之后表達(dá)式會(huì)繼續(xù)尋找這個(gè)字符串后面的匹配的第一個(gè)字符,所以后面的1會(huì)被過(guò)濾掉,然后再進(jìn)行全局匹配,即:
      234abbbc   不匹配
      234abbb    匹配
    所以會(huì)得到兩個(gè)匹配結(jié)果  abbbaabbbaaabbb和234abbb

    2 惰性
    從第一個(gè)字符開(kāi)始進(jìn)行匹配,如果不匹配,那么就在讀入一個(gè)字符,進(jìn)行整體匹配,以此類(lèi)推

    還是看上面的例子,如果是貪婪的,那么正則是這樣
    [^1]*?bbb,執(zhí)行過(guò)程如下:
      先找到滿(mǎn)足條件的第一個(gè)字符,所以1還是被過(guò)濾,從a開(kāi)始,匹配過(guò)程如下
      a    不匹配
      ab   不匹配
      abb  不匹配
      abbb 匹配

      繼續(xù)從下一個(gè)位置開(kāi)始讀入第一個(gè)匹配字符
      a    不匹配
      aa   不匹配
      
    不匹配
      aabbb匹配

     一直進(jìn)行到最后,所以得到的結(jié)果為abbb,aabbb,aaabbb,234abbb

    3 支配
      支配就是對(duì)整個(gè)字符串進(jìn)行一次匹配,匹配之后返回
      舉個(gè)例子,字符串為bbb,正則表達(dá)式為[b]*+,這是一個(gè)貪婪的匹配,直接返回bbb
      但是這里有個(gè)要注意的地方:如果正則為
    [b]*+b,返回結(jié)果是false,是空

    所以雖然
    [b]*+匹配了,但是當(dāng)再多了一個(gè)b的時(shí)候,有不滿(mǎn)足要求了,因?yàn)樗麄兪侨制ヅ涞?/span>

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 小说专区亚洲春色校园| 亚洲乱码一二三四区乱码| 国产产在线精品亚洲AAVV| 巨胸喷奶水视频www网免费| 亚洲乱码一二三四区国产| 97公开免费视频| 亚洲短视频在线观看| 37pao成人国产永久免费视频 | 国产高潮流白浆喷水免费A片 | 国产精品二区三区免费播放心| 亚洲综合色一区二区三区| 最新中文字幕免费视频| 亚洲精品无码中文久久字幕| 成人奭片免费观看| 小说区亚洲自拍另类| 亚洲女人被黑人巨大进入| 久久免费观看视频| 午夜亚洲AV日韩AV无码大全| 最近中文字幕免费2019| 久久国产亚洲精品| 亚洲国产成人久久综合一区77| 国色精品va在线观看免费视频| 婷婷亚洲久悠悠色悠在线播放| 亚洲综合免费视频| 亚洲欧美日韩一区二区三区| 亚洲第一永久AV网站久久精品男人的天堂AV | a在线观看免费网址大全| 亚洲a一级免费视频| 无码国产精品一区二区免费式直播 | 国产亚洲精品影视在线| 国产免费变态视频网址网站| 中文在线观看国语高清免费| 亚洲∧v久久久无码精品| 成年女人毛片免费视频| 丰满少妇作爱视频免费观看| 久久精品亚洲一区二区三区浴池| 免费电视剧在线观看| 一本大道一卡二大卡三卡免费| 亚洲综合在线观看视频| 国产一区二区三区免费视频| 日韩中文字幕免费视频|