正規表示式
正規表示式的基本使用
re.match(r』***』, 匹配的字串) 嘗試從字串的起始位置匹配乙個模式匹配成功re.match方法返回乙個匹配的物件,否則返回none。可以使用group(num) 或 groups() 匹配物件函式來獲取匹配表示式,groups()返回的是乙個元組。
使用正規表示式匹配單個字元
. 匹配任意1個字元(除了\n) re.s則可以匹配換行
re.i 表示大小寫不敏感
[a-c1-9 ]
匹配[ ]中列舉的任意乙個字元
\d 匹配數字,即0-9
\d 匹配非數字,即不是數字
\s 匹配空白,即 空格,tab鍵
\s 匹配非空白
\w 匹配單詞字元,即a-z、a-z、0-9、_。預設是re.u,即unicode編碼,可以匹配中文,加上re.a即可指定ascii編碼。[a-za-z0-9_]
\w 匹配非單詞字元
使用正規表示式匹配多個字元
* 匹配前乙個字元出現0次或者無限次,即可有可無
+ 匹配前乙個字元出現1次或者無限次,即至少有1次
? 匹配前乙個字元出現1次或者0次,即要麼有1次,要麼沒有
匹配前乙個字元出現m次
匹配前乙個字元出現從m到n次
匹配前乙個字元出現m到無限次
匹配開頭結尾邊界的使用
^ 匹配字串開頭 [^a]表示的是只要不是a
$ 匹配字串結尾
匹配分組的使用
| 匹配左右任意乙個表示式
(ab)
將括號中字元作為乙個分組
\num
引用分組num匹配到的字串 \1 \2
(?p)
分組起別名
(?p=name)
引用別名為name分組匹配到的字串
re高階函式 search、findall、sub等的使用
re.search 掃瞄整個字串並返回第乙個成功的匹配。匹配成功re.search方法返回乙個匹配的物件,否則返回none。可以使用group(num) 或 groups() 匹配物件函式來獲取匹配表示式。
re.findall
在字串中找到正規表示式所匹配的所有子串,並返回乙個列表,如果沒有找到匹配的,則返回空列表。
re.sub用於替換字串中的匹配項
re.split 根據匹配進行切割字串,並返回乙個列表
re.match與re.search的區別
re.match只匹配字串的開始,如果字串開始不符合正規表示式,則匹配失敗,函式返回none;而re.search匹配整個字串,直到找到乙個匹配。
貪婪和非貪婪的特點以及使用方式
python裡正則匹配預設是貪婪的(在少數語言裡也可能是預設非貪婪),總是嘗試匹配盡可能多的字元;非貪婪則相反,總是嘗試匹配盡可能少的字元。在"*","?","+",""後面加上?,使貪婪變成非貪婪
字串前加r的作用
python中字串前面加上 r 表示原生字串
正規表示式基本使用
常用函式 正規表示式 描述字串排列的規則 在對字串進行處理的時候,希望按照自定義的規則進行處理,稱為模式。我們用正規表示式描述這些自定義規則,也稱為模式表示式 主要用途 用於字串的匹配,檢查是否滿足某種規則 在python中,經常使用re模組實現正規表示式 原子是正規表示式的基本單位,每個正規表示式...
正規表示式的基本使用
雖說正規表示式在我們真正的專案開發過程中,大多數都是直接去查資料,但是對於一些正規表示式的基礎知識還是十分有必要了解的。比如讀懂乙個正規表示式,還有面試的時候很可能會被問到。1 學習 2 教程什麼的看的太煩了,而且還有些東西並不是很實用,下面花10分鐘就可以掌握實用的 基礎的正規表示式了。當然,這些...
正規表示式的基本使用
match 是從頭開始匹配 從第乙個字元 re.s 是專門和 匹配使用,讓我們真正的匹配所有 search 匹配單字元 1 使用 d 可以匹配任乙個數字 2 使用 1 匹配其中列舉的單個字元 2 表示範圍,某個區間,也是單個字元,比如36 表示的是3 和6 兩個字元 3 數字 字元 3 使用 w 可...