天天看點

20190430正規表達式知識小結-對比SQL中like語句的pattern比對在cmd以及jupyter中都可以通過關于python中正規表達式的知識總結

在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 該模式允許正規表達式可以寫的更加詳細,比如多行表示、忽略空白字元、加入注釋等

20190430正規表達式知識小結-對比SQL中like語句的pattern比對在cmd以及jupyter中都可以通過關于python中正規表達式的知識總結

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語句用于模糊比對。其中:

  1. 百分号%表示比對0個、1個或者多個字元
  2. 下劃線_則比對單個字元

    執行個體:

    SELECT * FROM Customers WHERE 位址 NOT LIKE '北%'
               

這個語句表示比對Customers表中位址不以北字開頭的那些記錄

繼續閱讀