python正則學習,python學習
python group()
Regex中,group()用來提出分組截獲的字串,()用來分組
import rea = "123abc456"print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(0) #123abc456,返回整體print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(1) #123print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(2) #abcprint re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(3) #456
究其因
1. Regex中的三組括弧把匹配結果分成三組
- group() 同group(0)就是匹配Regex整體結果
- group(1) 列出第一個括弧匹配部分,group(2) 列出第二個括弧匹配部分,group(3) 列出第三個括弧匹配部分。
2. 沒有匹配成功的,re.search()返回None
3. 當然Regex中沒有括弧,group(1)肯定不對了。
本文備忘:首次發博,copy僅供自學用。
原文連結:http://www.cnblogs.com/kaituorensheng/archive/2012/08/20/2648209.html
Regex截取URL檔案名稱及尾碼名
例:/upload/activity/xueba/20161025/091909_ce15d6bf-1089-4002-9ff6-016e13e420e5.gif
1,擷取圖片名稱
Regex:[^\/\\]+$
匹配結果:091909_ce15d6bf-1089-4002-9ff6-016e13e420e5.gif
2,擷取尾碼
Regex:[^\.]\w*$
匹配結果:gif
pic_type = re.search(r'[^\.]\w*$', pic_url).group(0)