1、正規表示式語法
正規表示式可以指定乙個模式,來匹配對應的字串。
特殊字元要麼表示某個類別的普通字元,要麼影響它們周圍的正規表示式如何解釋。
正規表示式的模式字串不可以包含空位元組,但可以使用\number
符號指定空位元組,例如
'\x00'
。特殊字元有:
」." 在預設模式下,匹配除換行以
外的任意字元。如果 re.dotall 標誌被指定,則匹配換行符在內的任意字元。
「^"在預設模式下,匹配字串的起始位置。在 re.multiline 標誌被指定,也匹配換行符之後的字元。如正規表示式'^py'匹配字串『py88py』只能得到乙個'py'
「$」在預設模式下,匹配字串的末尾。在 re.multiline 標誌被指定,也匹配換行符之前的位置。
「*」匹配零次或多次前導的模式字串,盡可能多的匹配。 『ab*』可以匹配『a' 'ab' 'abb……(盡可能多匹配)'
「+」匹配乙個或多個前導的模式字串,盡可能多的匹配。 』ab+』可以匹配『ab』 'abbb……'盡可能多
「?」匹配零個個或多個前導的模式字串。 『ab?』可以匹配『a』 'ab'
「*?」「+?」「??」限定符是貪婪的,它們匹配盡可能多的文字。在限定符之後加上?將使得匹配以非貪婪或最小的方式進行。
「」表示精確匹配前面的正規表示式m個拷貝,較少的匹配將導致整個表示式不能匹配。例如,a將精確匹配6個『a』字元,否則將不能匹配。
""生成的正規表示式匹配前導正規表示式的m到n個重複,嘗試匹配盡可能多的重複。例如,a將匹配3到5個字元a.省略m表示下界為0,省略n表示上界無窮大。
「?」 對於6個字元的字串'aaaaaa',a將匹配5個a,a?將匹配3個a。
「\」 對任意特殊字元進行轉義,允許匹配字元『*』 '?' 等
「」 用來表示乙個字元的集合,在乙個集合中:
「|」 a|b,此處的a和b可以是任意的正規表示式,建立的這個正規表示式要麼匹配a,要麼匹配b,『|』可以用來隔開任意個數的正規表示式。
2、re模組的內容
re模組定義了幾個函式、常量和異常。
re.compile(pattern,flag=0) 將正規表示式模式編譯成乙個正規表示式物件,它可以使用match()和search()方法來進行匹配
python正規表示式元字元 正規表示式
字元 描述將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束...
python正規表示式及使用正規表示式的例子
正規表示式 正則表達用來匹配字串 正規表示式匹配過程 正規表示式語法規則 匹配除換行 n 外的任意字串 abcabc 轉義字元,使後乙個字元改變原來的意思 a c a c 字符集,對應的位置可以是字符集中任意字元,字符集中的字元可以逐個列出,也可以給出範圍,如 abc 或 a c 第乙個字元如果是 ...
Python 正規表示式
1.在python中,所有和正規表示式相關的功能都包含在re模組中。2.字元 表示 字串的末尾 如 road 則表示 只有當 road 出現在乙個字串的尾部時才會匹配。3.字元 表示 字元中的開始 如 road 則表示 只有當 road 出現在乙個字串的頭部時才會匹配。4.利用re.sub函式對字串...