[問題]python正規表達法請教

作者: king4647 (發呆)   2016-06-25 16:08:30
大家好 我是python的新手
最近遇到一些問題想請教高手們
我想將類似 2000.10.10|4.5|中文|5566
分成四塊 用group(0-3)取出來
不過試了很多方法一直卡住 想請大家幫忙看看感謝~~
我的code:
import re
a= "2000.10.10|4.5|中文|5566"
m=re.match(r"(^.{10})|(.{3})|(.{2})|(\d{4}$)",a)
print m.group(0)
print m.group(1)
print m.group(2)
print m.group(3)
輸出結果:
2000.10.10
2000.10.10
None
None
作者: s25g5d4 (function(){})()   2016-06-25 17:38:00
| 是 or 的意思 要 match 字面上的 | 需要轉譯改成 \| 就行了
作者: LPH66 (-6.2598534e+18f)   2016-06-25 19:24:00
基本上規定就是 0 是全部, 1 是第一個, 2 是第二個 etc許多語言中使用 regexp 做比對的結果都是這樣定的
作者: king4647 (發呆)   2016-06-25 23:16:00
感謝~~~

Links booklink

Contact Us: admin [ a t ] ucptt.com