1. 程式人生 > >Python學習筆記模式匹配與正則表達式之字符分類

Python學習筆記模式匹配與正則表達式之字符分類

17. idg rds auto light ron compile .com print

隨筆記錄方便自己和同路人查閱。

#------------------------------------------------我是可恥的分割線-------------------------------------------

  在前面電話號碼正則表達式的例子中,你知道\d可以代表任何數字。也就是說,\d是正則表達式(0|1|2|3|4|5|6|7|8|9)的縮寫。

有許多這樣的“縮寫字符分類”。如:

  \d表示0到9的任何數字

  \D表示除0到9的數字以外的任何字符

  \w表示任何字符、數字或下劃線字符(可以認為是匹配“單詞”字符)

  \W表示除字符、數字或下劃線字符以外的任何字符

  \s表示空格、制表符或換行符(可以認為是匹配“空白”字符)

  \S表示除空格、制表符和換行符以外的任何字符

  字符分類對於縮短正則表達式很有用。字符分類[0-5]只匹配數字 0 到 5,這比輸入(0|1|2|3|4|5)要短很多。  

#------------------------------------------------我是可恥的分割線-------------------------------------------

  示例代碼:

#! python 3
# -*- coding:utf-8 -*-
# Autor: Li Rong Yang
import re#導入模塊
xmasRegex = re.compile(r‘\d+\s\w+‘)
xmasRegex = xmasRegex.findall(‘‘‘12 drummers, 11 pipers, 10 lords, 9 ladies,
 8 maids, 7swans, 6 geese, 5 rings, 4 birds, 3 hens, 2 doves, 1 partridge‘‘‘)
print(xmasRegex)

  運行結果:

技術分享圖片

  

Python學習筆記模式匹配與正則表達式之字符分類