閱讀881 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Python正則表達式精講

Python正則表達式精講

一、什麼是正則表達式


正則表達式,又稱正規表示式、正規表示法、正規表達式、規則表達式、常規表示法(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),是計算機科學的一個概念。正則表達式使用單個字符串來描述、匹配一係列匹配某個句法規則的字符串。在很多文本編輯器裏,正則表達式通常被用來檢索、替換那些匹配某個模式的文本。

許多程序設計語言都支持利用正則表達式進行字符串操作。

簡單來說正則表達式就是一個模板,可以用它匹配尋找到我們所需要的內容,如郵件格式,手機號碼的格式要求。


二、正則表達式快速入門


正則表達式的規則很多,對於初學者來說要記住的內容太多。其實可以先掌握幾個基本就夠用了,多應用幾次後再了解其他,就比較快了。


掌握4個符號 : . * + ? ()

1) . 匹配除“\n”之外的任意字符

2) * 匹配前一個字符0次或無限次

3) ? 匹配前一個字符0次或1次

4) + 匹配前一個字符1次或無限次

5) () 當我們需要一段內容的時候就用括號包圍起來,不需要的內容放在括號外。

.* 貪心算法,匹配出最大滿足條件的。就是能匹配到最大的字符串就取到最大的。

.*? 非貪心算法,匹配最小的滿足條件的,多次。

以下可以放到熟悉一段時間後了解,寫出來備查。

\ 轉義字符,使後一個字符改變原來的意思

如果要匹配出這段網頁的中的圖片的鏈接

0

正則表達式就是這樣:


img src="(.*?)"

括號裏就是我們要取的內容。

如果你想學習Python可以來這個群,首先是四七二,中間是三零九,最後是二六一,裏麵可以學習和交流,也有資料可以下載。


三、Python正則表達式使用


掌握一個方法:findall(): 匹配所有符合規律的內容,返回包含結果的列表。


import re #引入正則表達式# 匹配出網頁中的title標簽中的內容title = re.findall('<title>(.*?)</title>',myhtml)

以下方法用得較少,可以放到後麵再理解。


search():

最後更新:2017-07-27 11:03:27

  上一篇:go  Version Control with Git (Udacity)優達學城筆記--L1:What is Version Control
  下一篇:go  VoIP服務器NVS助力諾西移動軟交換技術