python 正規表示式 概述及常用字元

2022-10-05 00:36:14 字數 1817 閱讀 3255

1.元字元:

. 它匹配除了換行字元外的任何字元,在 alternate 模式(re.dotall)下它甚至可以匹配換行

^ 匹配行首。除非設定 multiline 標誌,它只是匹配字串的開始。

$ 匹配行尾,行尾被定義為要麼是字串尾,要麼是乙個換行字元後面的任何位置。

* 重複0或n次

+ 重複1或n次

? 重複0或1次

{} 該限定符的意思是至少有 m 個重複,至多到 n 個重複

它們常用來指定乙個字元類別,所謂字元類別就是你想匹配的乙個字符集

\ 反斜槓後面可以加不同的字元以表示不同特殊意義。它也可以用於取消所有的元字元,這樣你就可以在模式中匹配它們了

| 可選項,或者 "程式設計客棧or" 操作符。

() 組

2.[akm$]將匹配字元"a", "k", "m", 或 "$" 中的任意乙個;"$"通常用作元字元,但在字元類別裡,其特性被除去,恢復成普通字元。

3.用 "\" 開始的特殊字元所表示的預定義字符集

\d 匹配任何十進位制數;它相當於類 [0-9]。

\d 匹配任何非數字字元;它相當於類 [^0-9]。

\s 匹配任何空白字元;它相當於類 [ \t\n\r\f\v]。

\s 匹配任何非空白字元;它相當於類 [^\t\n\r\f\v]。

\w 匹配任何字母數字字元;它相當於類 [a-za-z0-9_]。

\w 匹配任何非字母數字字元;它相當於類 [^a-za-z0-9_]。

\a 只匹配字串首。當不在 multiline 模式,\a 和 ^ 實際上是一樣的。然而,在 multiline 模式裡它們是不同的;\a 只是匹配字串首,而 ^ 還可以匹配在換行符之後字串的任何位置。

\z 只匹配字串尾。

\b 單詞邊界。這是個零寬界定符(zero-width assertions)只用以匹配單詞的詞首和詞尾。單詞被定義為乙個字母數字序列,因此詞尾就是用空白符或非字母數字符來標示的。

\b 另乙個零寬界定符(zero-width assertions),它正好同 \b 相反,只在當前位置不在單詞邊界時匹配。

4.重複元字元

* 重複0或n次

+ 重www.cppcns.com復1或n次

? 重複0或1次

,其中 m 和 n 是十進位制整數。該限定符的意思是至少有 m 個重複,至多到 n 個重複

5.regexobject物件常用方法

match() 決定 re 是否在字串剛開始的位置匹配

search() 掃瞄字串,找到這個 re 匹配的位置

findall() 找到 re 匹配的所有子串,並把它們作為乙個列表返回

finditer() 找到 re 匹配的所有子串,並把它們作為乙個迭代器返回

6.matchobject物件的常用方法

group() 返回被 re 匹配的字串

start() 返回匹配開始的位置

e 返回匹配結束的位置

span() 返回乙個元組包含匹配 (開始,結束) 的位置

7.編譯標誌

dotall, s     使 . 匹配包括換行在內的所有字元

ignorecase, i     使程式設計客棧匹配對大小寫不敏感

locale, l     做本地化識別(locale-aware)匹配

multiline, m     多行匹配,影響 ^ 和 $

verbose, x     能夠使用 res 的 verbose 狀態,使之被組織得更清晰易懂

本文標題: python 正規表示式 概述及常用字元

本文位址:

python 正規表示式 概述及常用字元

1.元字元 它匹配除了換行字元外的 任何字元,在 alternate 模式 re.dotall 下它甚至可以匹配換行 匹配行首。除非設定 multiline 標誌,它只是匹配字串的開始。匹配行尾,行尾被定義為要麼是字串尾,要麼是乙個換行字元後面的任何位置。重複0或n次 重複1或n次 重複0或1次 該...

正規表示式概述

正規表示式,稱正規表示式 正規表示法 正規表示式 規則表示式 常 規表示法 英語 regular expression,在 中常簡寫為regex regexp或 re 是電腦科學的 個概念。正規表示式使 單個字串來描述 匹配 系列匹配某個句法規則的字串。在很多 本編輯器 正規表示式通常 被 來檢索 ...

正規表示式概述

正規表示式概述 正規表示式,稱正規表示式 正規表示法 正規表示式 規則表示式 常 規表示法 英語 regular expression,在 中常簡寫為regex regexp或 re 是電腦科學的 個概念。正規表示式使 單個字串來描述 匹配 系列匹配某個句法規則的字串。在很多 本編輯器 正規表示式通...