Python正規表示式的分組

2021-10-02 17:01:13 字數 1277 閱讀 4733

1.( ) 將括號中的字元作為乙個分組

2.\num 引用num匹配到的字串

3.(?p< name >) 起組名

4.(?p=name) 引用name匹配到的字串

將字串分組進行匹配

看例子及注釋:

import re

pattern=r'(\d)-([1-9]\d$)'

s='010-123456'

o=re.match(pattern,s)

print(o)

print(o.group(

))print(o.group(1))

#輸出第一組,即第乙個括號中的內容

print(o.group(2))

#輸出第二組

print(o.groups(

))#將分組內容作為元組返回

print(o.groups(

)[0]

)#元組中的0號內容

print(o.groups(

)[1]

)#元組中的1號內容

輸出:

(0, 10), match=

'010-123456'

>

010-123456

010123456

('010', '123456'

)010

123456

\num表示當前匹配的內容要和前面的第num個括號一致

import re

pattern=r'<(.+)><(.+)>.+'

#使用了原生字串

s=''

o=re.match(pattern,s)

print(o)

輸出:

(0, 29), match=

''>

若把字串該為:s=』< html >< head >內容一< /body >< /html >』 則不會匹配成功。

第乙個用來為分組起名

第二個表示要和前面起好名字的某一組匹配一致

import re

pattern=r'<(?p.+)><(?p.+)>.+'

s=''

o=re.match(pattern,s)

print(o)

輸出:

(0, 29), match=

''>

Python 正規表示式(分組)

分組就是用一對圓括號 括起來的正規表示式,匹配出的內容就表示乙個分組。從正規表示式的左邊開始看,看到的第乙個左括號 表示第乙個分組,第二個表示第二個分組,依次類推,需要注意的是,有乙個隱含的全域性分組 就是0 就是整個正規表示式。分完組以後,要想獲得某個分組的內容,直接使用group num 和gr...

正規表示式 分組

正規表示式對於單個字元的重複,非常方便。比如 d 表示1個或多個數字,表示重複0次或多次 重複1次或多次 重複0次或1次 重複n次 重複n次或多次 重複n次到m次 指定的字元後加特定的限定符,即可實現單字元的重複,那麼,對於一組字串的重複,正規表示式該如何操作?用小括號來指定子表示式 或稱分組 對指...

分組 正規表示式

在正規表示式中,可以用小括號將一些規則括起來當作分組,分組可以作為乙個元字元來看待。d d這是乙個簡單的且不完善的匹配 ip 位址的正規表示式,因為它除了能匹配正確的 ip 位址外,還能匹配如 322.197.578.888 這種不存在的 ip 位址。當然,用這個表示式簡單匹配成功後可以在利用 ph...