re.match只匹配字串的開始,如果字串開始不符合正規表示式,則匹配失敗,函式返回none;而re.search匹配整個字串,直到找到乙個匹配。
import re
s ='4211811996******xx'
res = re.search(
'(?p\d)(?p\d)(?p\d)'
,s)print
(res.groupdict())
res = re.match(r'(\d)(\d)(\d)'
,s)print
('province:'
,res.group(1)
)print
('city:'
,res.group(2)
)print
('born_year:'
,res.group(3)
)
re.search輸出的結果可以作為字典進行下一步使用
正規表示式例項
字元與字元類匹配
例項描述
python
匹配』python『
[pp]ython
匹配 「python」 或 「python」
rub[ye]
匹配 「ruby」 或 「rube」
[aeiou]
匹配中括號內的任意乙個字母
[0-9]
匹配任何數字。類似於 [0123456789]
[a-z]
匹配任何小寫字母
[a-z]
匹配任何大寫字母
[a-za-z0-9]
匹配任何字母及數字
[^aeiou]
除了aeiou字母以外的所有字元
[^0-9]
匹配除了數字外的字元
[a-za-z0-9_]
匹配任意字母數字及下劃線
特殊類字元
例項描述
.匹配除 「\n」 之外的任何單個字元。要匹配包括 『\n』 在內的任何字元,請使用象 『[.\n]』 的模式。
\d匹配乙個數字字元。等價於 [0-9]。
\d匹配乙個非數字字元。等價於 [^0-9]。
\s匹配任何空白字元,包括空格、製表符、換頁符等等。等價於 [ \f\n\r\t\v]。
\s匹配任何非空白字元。等價於 [^ \f\n\r\t\v]。
\w匹配包括下劃線的任何單詞字元。等價於』[a-za-z0-9_]』。
\w匹配任何非單詞字元。等價於 『[^a-za-z0-9_]』。
python正規表示式元字元 正規表示式
字元 描述將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束...
Python 正規表示式
1.在python中,所有和正規表示式相關的功能都包含在re模組中。2.字元 表示 字串的末尾 如 road 則表示 只有當 road 出現在乙個字串的尾部時才會匹配。3.字元 表示 字元中的開始 如 road 則表示 只有當 road 出現在乙個字串的頭部時才會匹配。4.利用re.sub函式對字串...
Python正規表示式
學習python自然而然就不得不面對正規表示式這個難題。當初在沒有學習python之前,自己也曾經嘗試著學習過正規表示式,但是那時候感覺很麻煩,很難懂,結果就是不了了之。但是現在學習python我用的書是 python基礎教程 第二版 這本書中對re模組的講解很簡單易懂,內容不多但起碼把人領進門了,...