Skynet

          ---------- ---------- 我的新 blog : liukaiyi.cublog.cn ---------- ----------

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks
          一些特殊正則元字符說明:
           
          1. *? 和 +? 和 {n,}?  懶惰匹配 
            
          1.1 非懶惰                   ↓
              echo 
          "ab2c121a" |perl -ne 'print $1 if /(.*)"d/;'   #print ab2c12
             
          1.2 懶惰                       ↓
              echo 
          "ab2c121a" |perl -ne 'print $1 if /(.*?)"d/;'   #print ab
           
          2.  回溯引用和前后查找:
            
          2.1 向前查找   (?=..)                   ↓
              echo 
          "ab2c121a" |perl -ne 'print $1 if /(.*?)(?=2)/;'  #print ab
            
          2.2 向后查找 (?<=..)                 ↓
              echo 
          "ab2c121a" |perl -ne 'print $1 if /(?<=2)(.*)(?=2)/;' #print c1
            
          2.3 負向-/后 查找  (?!..) (?<!..)   
             
          #不能匹配 ..                               ↓
             
          echo "ab2c121a" |perl -ne 'print $1 if /(?<!2)(c.*)/;'    #print 無
             
          echo "ab2c121a" |perl -ne 'print $1 if /(?<!3)(c.*)/;'    #print c121a
            
          2.4 條件 ?()  = if   ?()| = if else
             
          # ?()  例如  <p> </p> 必須同時出現                ↓      ↓  
             
          echo "<p>xx</p>"|perl -ne 'print $2  if /(<p>)?("w*)(?(1)<"/p>)/'   #print  xx
             
          echo "<p>xx"|perl -ne 'print $2,""n" if /(<p>)?("w*)(?(1)<"/p>)/'    #print 空
             
          echo "xx"|perl -ne 'print $2 if /(<p>)?("w*)(?(1)<"/p>)/'    #print xx
              # ?()|  例如 還是上面的, 
              # 當 有<p> 可以接</p> 也可以接 數字結尾                            ↓

          echo 
          "<p>xx1</p>"|perl -ne 'print $2  if /(<p>)?("w*)(?(1)<"/p>|"d)/'  #print xx1
          echo 
          "<p>xx1"|perl -ne 'print $2  if /(<p>)?("w*)(?(1)<"/p>|"d)/'    # print xx






          整理 www.aygfsteel.com/Good-Game
          posted on 2009-08-27 16:04 劉凱毅 閱讀(1301) 評論(0)  編輯  收藏 所屬分類: perl
          主站蜘蛛池模板: 方山县| 霍州市| 高尔夫| 高陵县| 金寨县| 武安市| 孝义市| 崇礼县| 两当县| 鄂尔多斯市| 胶州市| 邯郸市| 扶绥县| 大悟县| 静安区| 金山区| 哈巴河县| 永兴县| 吕梁市| 安宁市| 成安县| 丹江口市| 北碚区| 土默特右旗| 海晏县| 崇明县| 宁远县| 乌鲁木齐市| 苍南县| 长葛市| 错那县| 白河县| 玉屏| 襄汾县| 盐山县| 靖州| 新晃| 白水县| 奉节县| 兴文县| 余姚市|