python正規表示式(二)

2021-06-22 20:44:58 字數 1417 閱讀 9914

re模組的用法

1、re.s可以匹配轉義符

re.findall('k.n','darken dark\nn')

只輸出第乙個darken中的ken

re.findall('k.n','darken dark\nn',re.s)

不僅輸出darken中的ken,還輸出了dak\nn中的k\nn

2、re.m匹配多行

re.findall(r'^ta','tan tb\ntab ta')

只返回第一行的ta,^表示行首的意思

re.findall(r'ta','tan tb\ntab ta')
3個ta都返回了

re.findall(r'^ta','tan tb\ntab ta',re.m)
此時第二行的行首ta也返回了,這就是多行匹配的用處

3、re.i大小寫匹配

so easy!

4、re.x多行。。。和re.m類似,細節還沒注意

5、()分組

s = r'\w@\w+(\.com|\.cn)'

re.findall(s,'[email protected]')

返回.com,如何充分應用這個優勢

str = 'a b=ab d'

s1 = r'a b=.+ d'

s2 = r'a b=(.+) d'

re.findall(s1,str)

re.findall(s2,str)

第乙個返回的是 a b=ab d,而第二個只返回了ab,這對於提取同構資料中的異樣值還有效,這也是findall相對於match的優勢所在

6、match和search

都是返回物件的匹配,區別在於,match只匹配行首,而search全文匹配。

6、split函式

str='123+456-789*456'

re.split(r'[+\-*]',str)

返回123 456 789 456,該函式完成了根據指定符號進行斷句的功能,由於中的-符號有別的用途,需要轉義。

7、sub函式

re.sub(r'[abc]','t','tan')
返回ttn,也就是通過r'[abc]查詢『tan』,再用t替代查詢到的[abc]。subn函式除了返回替換後的字串,還返回替換的個數。

8、others

dir(re)可以檢視re下的成員變數和屬性方法

help(re)獲得相關模組的幫助文件,可以具體到某個成員,如help(re.sub)檢視re中的sub函式。

Python 正規表示式(二)

這次的正規表示式學習談一談選擇符和子模式 可選項和重複子模式 在字串的各個字元都不相同的請胯下,字符集是比較好用的,但是如果只想匹配特定的字串,那麼字符集就不合適了,這裡就可以使用管道符號 比如我們只想匹配字串 python 和 perl 我們可以使用正則 python perl 但是有時候我們不需...

python正規表示式(二)

python的正規表示式支援大量的擴充套件符號 通過使用 ilmsux 系列,使用者可以在正規表示式裡面指定乙個或者多個標記,而不是通過compile 或者其他re模組函式。下面使用re.i ignorecase的示例,最後乙個示例在re.m multiline實現多行混合。import re re...

python正規表示式(二 )

re模組 匯入re模組 import re match方法 result re.match 正規表示式,要匹配的字串 result.group 字元 功能 匹配任意1個字元 除了 n 匹配 中列舉的字元 d匹配數字,即0 9 d匹配非數字,即不是數字 s匹配空白,即 空格,tab鍵 s匹配非空白 w...