正規表示式:是乙個特殊的字串行,利用事先定義好的一些特定字元以及他們的組合組成乙個「規則」,檢查乙個字串是否與這種規則匹配來實現對字元的過濾或匹配。
python中,re模組提供了正規表示式操作所需要的功能。
字串前加r,表明對字串不進行轉義
re模組中findall()方法 以列表形式返回所有能匹配的子串。(如果沒有則返回空列表)
元字元:有些字元比較特殊,他們和自身並不匹配,而是表明應和一些特殊的東西匹配,或者會影響重複次數。這些特殊的字元,稱為元字元。
元字元:
「 . 」 表示除換行符外的任意字元。
「 \s 」 表示不是空白符的任意字元。
「【】」:指定字符集。
「 …… 」 (上箭頭,shift 6)匹配行首,以該字元後面字元開頭的字串。
「¥」 (美元符號,shift 4 )匹配行尾,以該符號之前字元結束的字串。
【……】表示補集,匹配不在區間範圍的字元。
「 \ 」 加其他。
\b :匹配單詞頭或單詞尾。
\b :與之相反匹配 非 單詞頭或單詞尾。
\d :匹配任何十進位制數(相當於【0-9】)
\d:與之相反 相當於【……0-9】(上面的補集)
\s :匹配任何空白字元,相當於【\t\n\r\f\v】;
\s :與之相反 匹配任何空白字元。
\w :匹配任何字母,數字,下劃線字元,想當於【a-za-z0-9】;
\w:與之相反,匹配任何非字母,數字下劃線。
也可用於取消所有元字元:\\、\[。
「 * 」 匹配位於*之前的字元或子模式出現 0次~多次。
「 + 」匹配位於+之前的字元或子模式出現 1次~多次。
「 ? 」匹配位於?之前的0個或1 個字元。(盡可能短)
:表示至少m個重複,至多n個重複。
等同於*
等同於+
等同於?
但是如果可以的話,最好使用*,+,?。
雖然通過re模組可以使用正規表示式處理字串,但是正規表示式物件提供了更多的功能
正規表示式 RE
最近一段時間在研究nginx的rewirte重寫機制,因此對re需要有一定的了解,看了想關的文章,因此自己來寫一篇類似總結性的的文章。基本來說,正規表示式是一種用來描述一定數量文字的模式。regex regular express。本文用 regex 來表示一段具體的正規表示式。一段文字就是最基本的...
re正規表示式
1.數字 0 9 2.n位的數字 d 3.至少n位的數字 d 4.m n位的數字 d 5.零和非零開頭的數字 0 1 9 0 9 6.非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 7.帶1 2位小數的正數或負數 d d 8.正數 負數 和小數 d d 9.有兩位小數的正實數 0 9 0 9...
Re正規表示式
import re 匯入re模組 重複出現的字串 對於重複出現的字串可以用大括號內部加上重複次數的方式表達 r d 分組 使用小括號分組 r d d 重複出現的字串 對於重複出現的字串可以用大括號內部加上重複次數的方式表達 r d 重複出現的字串 對於重複出現的字串可以用大括號內部加上重複次數的方式...