一種匹配字串的表示式,使用re模組。正規表示式是一種獨立的語法,和python沒有任何的關係
程式領域
自動化開發
(一)、元字元
約束範圍的混合使用
字元組中的約束字元內在的依賴的條件是按照ascii來進行的,每乙個字元都對應乙個ascii標碼,約束範圍中字元的字元對應的ascii碼的順序必須是從小往大,不能反過來,例如a-z可以,但是a-z不行,因為a的編碼比a的編碼大。
元字元\d:匹配非數字
\w:匹配非數字、字母、下劃線
\s:匹配非空白(製表符、空格和換行符)
[\w\w]、[\s\s]和[\d\d]都表示全集,即所有的字元都滿足要求
\b:匹配乙個單詞的邊界
^:匹配字串的開始
$:匹配字串的結尾
|:或關係,只能從兩個中匹配乙個,例如:a|b, 只能匹配a或者b
.:點號匹配換行符外的所有字元。如果要匹配點號必須使用轉義字元,即.表示點號。
?:表示的是把未匹配的字元也當作匹配上的字元,當使用?時需要注意的是當沒有寫任何內容的時候也表示匹配上了乙個字元。
使用?主要用在修飾的字元可有可無或者是這個字元可以選擇的情況下,例如:\d.?\d裡點號是可有可無的,整數和一位小數都符合要求
除了這種情況,其他的情況^都在字元組外.
需要注意的是:或關係兩頭如果有重合的部分,那麼必須把長的一方放在'|'的前邊
(二)、量詞
量詞限制的是字元的個數,即同乙個字元出現的次數
*、?和 *使用的時候不能加{},其他的數字使用的時候必須加上{}
.*?x這種形式最為常見,匹配任意字元直到找到x
??:[.??]表示的是可以匹配1到無數個點號
+?(三)、分組
分組使用()把多個字元轉換成乙個整體的字元,這個字元可以和單字元一樣使用
例如:匹配整數和小數的正則
在python中''表示的是轉義符。
量詞只修飾前邊乙個元字元
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...