正規表示式的基本使用

2021-08-21 08:09:25 字數 1484 閱讀 5975

正規表示式

正規表示式的基本使用

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 可...