零全零美(www.zzgwt.com)
          生活中的很多事情,并不像If...Else那么簡(jiǎn)單!
          posts - 96,comments - 52,trackbacks - 0

             "|":意思是"或",他可以把多個(gè)子表達(dá)式組合成一個(gè)總的表達(dá)式,而這個(gè)總表達(dá)式擁有子表達(dá)式的全部能力
              例如:Yang 可以匹配 My name is YangKai,that is my first name is Yang and my second name is Kai中的Yang,Kai
          可以用來匹配其中的Kai,但是這兩個(gè)子表達(dá)式要么只能取Yang要么只能取Kai,如果我們要求一次性把所有的Yang和Kai都取出來,
          我們就可以這樣做:Yang|Kai 
              這個(gè)時(shí)候應(yīng)該區(qū)別一下多選結(jié)構(gòu)與字符組[],字符組[]的單位為單個(gè)字符,意思是字符組[]總是以字符為單位去匹配,本例中如果我們這樣:[YangKai],那么該表示的作用是匹配字符串中所有的Y,所有的a,所有的n.....,他不會(huì)去把Yang作為一個(gè)單位,也不會(huì)把Kai作為一個(gè)單位,而每個(gè)多選結(jié)構(gòu)可以是一個(gè)單獨(dú)的正則表達(dá)式,可以去匹配任意長(zhǎng)度的文本。
             同樣應(yīng)該注意的一點(diǎn)是:如果把"|"放在字符組[]的內(nèi)部,他只是一個(gè)普通的字符,不是元字符。
             多個(gè)多選結(jié)構(gòu)可以用()組合,如:a(ng|dd|ni)k的意思是匹配a后是ng或者是dd或者是ni然后是k的字符串,又如:^(Form|To|Mail) : 以From或者To或者M(jìn)ail開頭的行

          posted on 2008-11-21 13:44 零全零美 閱讀(3659) 評(píng)論(2)  編輯  收藏 所屬分類: 正則表達(dá)式

          FeedBack:
          # re: 正則表達(dá)式學(xué)習(xí)筆記(2) 多選結(jié)構(gòu)--匹配任意子表達(dá)式
          2008-11-24 10:06 | 劉凱毅
          很好
          確實(shí)學(xué)到原來沒注意到幾個(gè)地方
          1. []中'|' 是普通的,不需要轉(zhuǎn)換
          2. ^(Form|To|Mail) 是可行的,原來笨笨的 ^((Form)|(To)|(Mail))

          并且我補(bǔ)充點(diǎn)
          在java中使用 | 要轉(zhuǎn)義為 \\|使用
          javascript | 要轉(zhuǎn)義為 \| 使用

          我在使用java 正則中做到一些嘗試 希望對(duì)大家有幫助
          java regex 正則部分高級(jí)特性使用l

          @昨夜流星
          看好你哦 :) 期待 3 --

            回復(fù)  更多評(píng)論
            
          # re: 正則表達(dá)式學(xué)習(xí)筆記(2) 多選結(jié)構(gòu)--匹配任意子表達(dá)式
          2009-10-05 18:28 | ThundeR
          @劉凱毅
          哈哈~~~又從你的回復(fù)中收獲良多~~
          多謝博主和一樓的兩位!  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 德令哈市| 桂平市| 浙江省| 张家港市| 白沙| 龙江县| 海林市| 临清市| 宜章县| 南澳县| 沂水县| 高平市| 合水县| 潢川县| 大洼县| 昌江| 永顺县| 天津市| 轮台县| 普陀区| 巴南区| 临江市| 赤水市| 扶余县| 晋江市| 平昌县| 怀柔区| 连云港市| 青神县| 呈贡县| 昭苏县| 兴海县| 弥勒县| 定日县| 丹寨县| 米易县| 漳浦县| 原平市| 永德县| 明光市| 吉林省|