Python 正規表示式 re模組

2021-08-25 08:31:17 字數 1494 閱讀 8841

在python中,需要用到正規表示式時,就需要匯入re模組進行操作,們可以直接呼叫來實現正則匹配

普通字元

匹配自身

abcabc

.匹配任意除換行符」\n」外的字元(在dotall模式中也能匹配換行符

a.cabc

|轉義字元,使後乙個字元改變原來的意思

a.c;a\\c

a.c;a\c

*匹配前乙個字元0或多次

abc*

ab;abccc

+匹配前乙個字元1次或無限次

abc+

abc;abccc

?匹配乙個字元0次或1次

abc?

ab;abc

^匹配字串開頭。在多行模式中匹配每一行的開頭

^abc

abc$

匹配字串末尾,在多行模式中匹配每一行的末尾

abc$

abc|

或。匹配|左右表示式任意乙個,從左到右匹配,如果|沒有包括在()中,則它的範圍是整個正規表示式

abc|def

abcdef

{}匹配前乙個字元m次,匹配前乙個字元m至n次,若省略n,則匹配m至無限次

abcabcabbc

字符集。對應的位置可以是字符集中任意字元。字符集中的字元可以逐個列出,也可以給出範圍,如[abc]或[a-c]。[^abc]表示取反,即非abc。所有特殊字元在字符集中都失去其原有的特殊含義。用\反斜槓轉義恢復特殊字元的特殊含義。

a[bcd]e

abeaceade

()被括起來的表示式將作為分組,從表示式左邊開始沒遇到乙個分組的左括號「(」,編號+1.分組表示式作為乙個整體,可以後接數量詞。表示式中的|僅在該組中有效。

(abc)a(123|456)c

abcabca456c

反斜槓的作用非常重要

字元功能

\d匹配數字,即0-9

\d匹配非數字,即不是數字

\s匹配空白,即空格,tab鍵

\s匹配非空白

\w匹配單詞字元,即a-z、a-z、0-9、_

\w匹配非單詞字元

字元功能

*匹配前乙個字元出現0次或者無限次,即可有可無

+匹配前乙個字元出現1次或者無限次,即至少有1次

?匹配前乙個字元出現1次或者0次,即要麼有1次,要麼沒有

匹配前乙個字元出現m次

匹配前乙個字元至少出現m次

匹配前乙個字元出現從m到n次

字元功能

^匹配字串開頭

$匹配字串結尾

\b匹配乙個單詞的邊界

\b匹配非單詞邊界

字元功能

|匹配左右任意乙個表示式

(ab)

將括號中字元作為乙個分組

\num

引用分組num匹配到的字串

(?p\)

分組起別名

(?p=name)

引用別名為name分組匹配到的字串

python正規表示式re模組

嗯 看看就好 小白可能會坑人 有錯誤的話麻煩指出來謝謝 2018年3月15日13 54 11 re 模組 函式與方法的區別 如果是乙個函式,用類名去呼叫,如果是乙個方法,用物件去呼叫 1.compile函式 編 print n1 10 n import re pattern re.compile r...

re模組 正規表示式 python

d 匹配數字 w 匹配字母或數字 s 匹配乙個空格 包括tab s 表示至少乙個空格 表示任意字元 包括零個 表示至少乙個字元 表示0個或1個字元 表示n個字元 表示n m個字元 可以匹配任意字元 a b 表示可以匹配a或b 行的開頭 d 表示必須以數字開頭 表示結尾 d 表示必須以數字結尾 r 字...

Python 正規表示式,re模組

1.re.findall 搜尋字串,以列表形式返回全部能匹配的子串,返回形式為陣列 findall pattern,string,flags 0 第乙個引數,正規表示式 第二個引數,搜尋的是哪些字串 第三個引數,匹配的模式,其中re.s使匹配包括換行在內的所有字元。findall 函式是逐行匹配的。...