python 21:match對象的兩個方法group()和groups()

一、group()方法

返回查到到的匹配文本。

>>>import re

>>>phoneNumRegex = re.compile(r'\d\d\d-\d\d\d-\d\d\d\d')

>>>mo = phoneNumRegex.search('My number is 415-555-4242.')

>>>print('Phone number found:' + mo.group())

Phone number found:415-555-4242

二、返回指定分組的匹配文本

假定想要將區(qū)號從電話號碼中分離,添加括號將在正則表達式中創(chuàng)建“分組”:(\d\d\d) -(\d\d\d-\d\d\d\d)。然后可以使用group()匹配對象方法,從一個分組中獲取匹配的文本。

正則表達式字符串中的第一對括號是第1組。第二對括號是第2組。

向group()匹配對象方法傳入整數(shù)1或2,就可以取得匹配文本的不同部分。向group()方法傳入0或不傳入?yún)?shù),將返回整個匹配的文本。

group()方法在分組的情況下,可以通過指定參數(shù)來返回指定分組的匹配文本。

>>>phoneNumRegex = re.compile(r'(\d\d\d)-(\d\d\d-\d\d\d\d)')

>>> mo = phoneNumRegex.search('My number is 415-555-4242.')

>>>mo.group(1)

'415'

>>>mo.group(2)

'555-4242'

>>>mo.group(0)

'415-555-4242'

>>>mo.group()

'415-555-4242'

三、一次返回所有分組的匹配文本

使用groups()方法,返回一個元組。有多少分組就有多少元素。

>>>mo.groups()

('415' ,'555-4242')

>>>areaCode, mainNumber =mo.groups()

>>> print(areaCode)

415

>>>print(mainNumber)

555-4242

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容