python正規表示式flags引數使用

2021-10-02 04:15:10 字數 1507 閱讀 4626

介紹re.i、re.debug、re.s的使用,多個flags如何使用;正規表示式貪婪模式、非貪婪模式使用例項,re.search()正規表示式傳變數。

'abc'

>>> patern=re.compile('abc',re.i)

>>> re.search(patern,'abc')

<_sre.sre_match object at 0x0000000001e64510>

>>>

>>> re.search(patern,'abc').group()

'abc'

>>>

>>> re.search('abc','abc',flags=re.i | re.debug).group()    ###2個引數,使用|分割

literal 97

literal 98

literal 67

'abc'

>>> str='''

... abc

... def'''

>>>

>>>

>>> str

'\nabc  \ndef'

>>> re.search('abc.*f',str,flags=re.i | re.debug | re.s).group()   ###使用re.s時,.可以匹配任意字元,包括

換行literal 97

literal 98

literal 67

max_repeat 0 4294967295

any none

literal 102

'abc  \ndef'

>>> str2='''

... abc

... def

... def

... '''

>>> re.search('abc.*f',str2,flags=re.i | re.debug | re.s).group()    ###貪婪模式,最長匹配

literal 97

literal 98

literal 67

max_repeat 0 4294967295

any none

literal 102

'abc  \ndef\ndef'

>>>

>>> re.search('abc.*?f',str2,flags=re.i | re.debug | re.s).group()  ##非貪婪模式匹配,遇到第1個匹配

f的不繼續匹配

literal 97

literal 98

literal 67

min_repeat 0 4294967295

any none

literal 102

'abc  \ndef'

>>> name='zte'

>>> re.search('name:%s' %name,'name:zte').group()   ##re.search正規表示式可以傳變數

'name:zte'

>>>

Python正規表示式中的flag

正規表示式可以包含一些標誌修飾符來控制匹配模式,用在正規表示式處理函式中的flag引數中,為可選引數。1 re.i 全寫 re.ignorecase 表示使匹配時,忽略大小 2 re.m 全寫 re.multiline 多行匹配,影響 和 的行為 3 re.s 全寫 re.dotall 使點 匹配包...

python正規表示式元字元 正規表示式

字元 描述將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束...

Python 正規表示式

1.在python中,所有和正規表示式相關的功能都包含在re模組中。2.字元 表示 字串的末尾 如 road 則表示 只有當 road 出現在乙個字串的尾部時才會匹配。3.字元 表示 字元中的開始 如 road 則表示 只有當 road 出現在乙個字串的頭部時才會匹配。4.利用re.sub函式對字串...