正則表達式筆記

2020-08-13 20:36:13

b=re.match(pattern,str,[,flags]) pattern-待匹配的正則表達式,str-待匹配的字元,flags匹配規則
flag=re.I無視大小寫 re.M 多行匹配
b.span()顯示匹配下標

re.search 不僅能匹配字串開頭,也能匹配中間
b.group(0),b.group,獲得匹配的整個表達式.b.group(1),b.group(2)獲取匹配的第一組,第二組內容
re.sub(pattern, repl, string [, count])
pattern:正則表達式模板
repl:替換的字串
string:在哪個字串中搜尋
count:匹配多少次。預設全部匹配
正則模板
^:匹配字串的開頭
$:匹配字串的結尾
?:匹配0個或1個(0、1)
+:匹配1個或多個(1、2、3、4、…)
*:匹配0個、1個或多個(0、1、2、3、4、…)
{n}:匹配n次
{m,n}:匹配m次到n次
{m,}:匹配至少m次
a|b:2選1.要麼是a,要麼是b,都能匹配
[abc]:多選1。中括號中的任意一個元素,都能匹配
[a-c]:範圍。從a開始到c之間的任意一個元素都能匹配(包含a和c)
[^abc]:反選。除了中括號中的任何一個元素,都能匹配
.:(小圓點)。任意字元。
\:反斜槓,跳脫
\w:匹配字母、數位、下劃線
\W:匹配非字母、非數位、非下劃線的其他字元
\s:匹配任意空字元。(不包含空格)\r\n\t
\S:匹配任意非空字元。
\d:匹配任意數位(0-9)
\D:匹配任意非數位
+、$、^、?、*、.:匹配特殊字元,需要在前面加反斜槓
\1、\2、……、\9:匹配小括號括起來的第1到第9個分組