正規表示式

2021-09-26 00:00:43 字數 915 閱讀 3442

import re

1.編譯乙個正規表示式

patter=re.compile( 'a(.*?)a' ,re.s)            .在正則中匹配 除\n換行符之外的所有 符號   加上re.s之後  會匹配 \n

re.match(patter,待匹配的字元)              從待匹配的字元  從頭開始匹配 如果第乙個字元不符合 則匹配失敗

re.search(patter,待匹配的字元)            從待匹配的字元  中 匹配 第乙個符合規則的 字串

re.sub('匹配規則'   ,  ' 替換的字串', '被替換的字元') 

re.findall(patter,待匹配的字元)              從待匹配的字元  中 匹配 所有符合規則的 字元

以上方法都可以 使用re.***(  'a(.*?)a'  ,待匹配的字元) 的形式    

也可以使用patter.***(待匹配的字元)        patter.sub( ' 替換的字串', '被替換的字元')

2. 匹配模式

.代表任意字元    *代表0個或無限個    +代表乙個或無限個    ?代表 乙個或0個    也代表非貪婪模式盡量少匹配,以免多匹配

\s  匹配任意空白字元,包括 [\t\n\r\f]          \s匹配非空格字元  [^\t\n\r\f] 

匹配是應注意哪些看起來沒有的換行符 如\t\n\r\f

re.findall('a.*bc','a\nbc',re.dotall)     匹配結果是 a\nbc     re.dotall與re.s一樣

re.findall('a(.*)bc','a\nbc',re.dotall)     匹配結果是   \n               

[\s\s]*?   可以匹配中間有空格 或者不是空格的所有字元

正規表示式 正規表示式 總結

非負整數 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正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...