在cmd以及jupyter中都可以通過
help(sum)
import re
help(re.findall)
#手段來擷取對于子產品的幫助文檔
關于python中正規表達式的知識總結
. 可以比對任意字元但是不包括換行符\n pyt.on—pytmon
(不包括換行符的這一點可以通過類似函數findall(pattern, string,flags=0)中的flags參數解決,flags=re.S 指明正則符号.可以比對任意字元,包括換行符\n)
flags參數用于指定比對模式,常用值有
(1) flags=re.I 使正規表達式對大小寫不敏感
(2) flags=re.M 讓正規表達式可以多行比對
(3) flags=re.S 指明正則符号.可以比對任意字元,包括換行符\n
(4) flags=re.X 該模式允許正規表達式可以寫的更加詳細,比如多行表示、忽略空白字元、加入注釋等
1. 字元串的比對查詢
re子產品中的findall函數可以對指定的字元串進行周遊比對,擷取字元串中所有比對的子串,并傳回一個清單結果。
該函數的參數含義如下:
findall(pattern, string, flags=0)
#pattern:指定需要比對的正規表達式。
string:指定待處理的字元串。
flags:指定比對模式,常用的值可以是re.I、re.M、re.S和re.X。
re.I的模式是讓正規表達式對大小寫不敏感;
re.M的模式是讓正規表達式可以多行比對;
re.S的模式指明正則符号.可以比對任意字元,包括換行符\n;
re.X模式允許正規表達式可以寫得更加詳細,如多行表示、忽略空白字元、加入注釋等。
2. 字元串的比對替換
sub(pattern, repl, string, count=0, flags=0)
repl:指定替換成的新值。
count:用于指定最多替換的次數,預設為全部替換。
flags:同findall函數中的flags。
3. 字元串的比對分割
re子產品中的split函數是将字元串按照指定的正規表達式分隔開,
類似于字元串的split方法。該函數的具體參數含義如下:
split(pattern, string, maxsplit=0, flags=0)
maxsplit:用于指定最大分割次數,預設為全部分割。
flags:同findall函數中的flags。
SQL-like pattern
SQL中like語句用于模糊比對。其中:
- 百分号%表示比對0個、1個或者多個字元
-
下劃線_則比對單個字元
執行個體:
SELECT * FROM Customers WHERE 位址 NOT LIKE '北%'
這個語句表示比對Customers表中位址不以北字開頭的那些記錄