介紹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函式對字串...