日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Python正則表達(dá)式中的re.S,re.M,re.I的作用

 醉人說夢(mèng) 2019-07-26

正則表達(dá)式可以包含一些可選標(biāo)志修飾符來控制匹配的模式。修飾符被指定為一個(gè)可選的標(biāo)志。多個(gè)標(biāo)志可以通過按位 OR(|) 它們來指定。如 re.I | re.M 被設(shè)置成 I 和 M 標(biāo)志:

修飾符描述
re.I 使匹配對(duì)大小寫不敏感
re.L 做本地化識(shí)別(locale-aware)匹配
re.M 多行匹配,影響 ^ 和 $
re.S 使 . 匹配包括換行在內(nèi)的所有字符
re.U 根據(jù)Unicode字符集解析字符。這個(gè)標(biāo)志影響 \w, \W, \b, \B.
re.X 該標(biāo)志通過給予你更靈活的格式以便你將正則表達(dá)式寫得更易于理解。

re.S

在Python的正則表達(dá)式中,有一個(gè)參數(shù)為re.S。它表示 “.” 的作用擴(kuò)展到整個(gè)字符串,包括“\n”。看如下代碼:

1
2
3
4
5
6
7
8
import re
a = '''asdfhellopass:
    worldaf
    '''
b = re.findall('hello(.*?)world',a)
c = re.findall('hello(.*?)world',a,re.S)
print 'b is ' , b
print 'c is ' , c

  

1
2
3
運(yùn)行結(jié)果:
b is  []
c is  ['pass:\n\t123\n\t']

  正則表達(dá)式中,“.”的作用是匹配除“\n”以外的任何字符,也就是說,它是在一行中進(jìn)行匹配。這里的“行”是以“\n”進(jìn)行區(qū)分的。a字符串有每行的末尾有一個(gè)“\n”,不過它不可見。

如果不使用re.S參數(shù),則只在每一行內(nèi)進(jìn)行匹配,如果一行沒有,就換下一行重新開始,不會(huì)跨行。而使用re.S參數(shù)以后,正則表達(dá)式會(huì)將這個(gè)字符串作為一個(gè)整體,將“\n”當(dāng)做一個(gè)普通的字符加入到這個(gè)字符串中,在整體中進(jìn)行匹配。

re.I

  不區(qū)分大小寫

1
2
3
4
5
res = re.findall(r"A", "abc", re.I)
print(res)
運(yùn)行結(jié)果:['a']

re.M

  將所有行的尾字母輸出

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
>>> s= '12 34/n56 78/n90'
>>> re.findall( r'^/d+' , s , re.M )          # 匹配位于行首的數(shù)字
['12', '56', '90']
>>> re.findall( r’/A/d+’, s , re.M )        # 匹配位于字符串開頭的數(shù)字
['12']
>>> re.findall( r'/d+$' , s , re.M )          # 匹配位于行尾的數(shù)字
['34', '78', '90']
>>> re.findall( r’/d+/Z’ , s , re.M )        # 匹配位于字符串尾的數(shù)字
['90']

  

re.sub

1
2
3
4
# 要求結(jié)果:['12', '23', '34']
l = ['1 2 ', '2   3', '  3 4']
import re
print(eval(re.sub(r'\s*', '', str(l))))

  

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多