詳解python裡使用正規表示式的分組命名方式

2022-10-07 07:48:08 字數 1114 閱讀 8854

詳解python裡使用正規表示式的分組命名方式

分組匹配的模式,可以通過groups()來全部訪問匹配的元組,也可以通過group()函式來按分組方式來訪問,但是這裡只能通過數字索引來訪問,如果某一天產品經理需要修改需求,讓你在它們之中新增乙個分組,這樣一來,就會導致匹配的陣列的索引的變化,作為開發人員的你,必須得一行一行**地修改。因此聰明的開發人員又想到乙個好方法程式設計客棧,把這些分組進行命名,只需要對名稱進行訪問分組,不通過索引來訪問了,就可以避免這個問題。那麼怎麼樣來命名呢?可以採用(?ppattern)的格式來命名。

例子如下:

#python 3.6

#蔡軍生

# # import re

text = 'this is some text -- with punctuation.'

print(text)

print()

patterns = [

r'^(?p\w+)',

r'(?p\w+)\s*$',

r'(?p\bt\w+)\w+(?p\w+)',

r'(?p\w+t)\b', ]

for pattern in patterns:

regex = re.compile(pattern)

match = regex.search(text)

print("'{}'".format(pattern))

print(' ', match.groups())

程式設計客棧print(' ', match.groupdict())

print()

結果輸出如下:

this is some text -- with punctuation.

'^(?p\w+)'

('this',)

'(?p\w+)\s*$'klcvmzfb

('punctuation',)

'(?p\bt\w+)\w+(?p\w+)'

('text', 'with')

'(?p\w+t)\b'

('text',)

本文標題: 詳解python裡使用正規表示式的分組命名方式

本文位址: /wangluo/re/208034.html

詳解python裡使用正規表示式的全匹配功能

詳解python裡使用正規表示式的全匹配功能 python中很多匹配,比如搜尋任意位置的search 函式,搜尋邊界的match 函式,現在還需要學習乙個全匹配函式,就是搜尋的字元與內容全部匹配,它就是fullmatch 函式。例子如下 python 3.6 蔡軍生 程式設計客棧749579 imp...

python裡使用正規表示式的DOTALL標誌

正常的情況下,正規表示式裡的句號 是匹配任何除換行符之外的字元。但是有時你也想要求它連換行符也匹配,這時怎麼辦呢?其實不用急,可以使用dotall標誌,就可以讓它匹配所有字元,不再排除換行符了。如下例子 python 3.6 蔡軍生 import re text this is some text ...

python正則 python正則表達

正規表示式是一種用來匹配字串的強有力的 設計思想是用一種描述性的語言來給字串定義乙個規則,凡是符合規則的字串,就認為它 匹配 否則就不匹配。一 可以通過幾類符號設計限定規則,常用的思想如下 匹配除換行符以外的任意字元 w匹配字母 數字 下劃線或漢字 w匹配字母 數字 下劃線或漢字以外的字元 s匹配任...