1. 程式人生 > >python正則表示式——分組的使用

python正則表示式——分組的使用

在正則表示式裡可以利用分組進行匹配,舉例如下:
1.利用分組匹配郵箱地址:

>>> s = "[email protected]"
>>> p = r"(\w{4,20})@(163|qq|gmail|outlook)\.(com)"
>>> result = re.match(p, s)
>>> result.group()
'[email protected]'
>>> result.group(1)
'wangbo'

2.利用分組匹配html標籤:分組1和2內容必須相互一致,照應於標記語言的規則。

>>> s = "<html><h1>what the fuck!</h1></html>"
>>> p = r"<(.+)><(.+)>(.+)</\2></\1>"
>>> re.match(p, s)
<_sre.SRE_Match object; span=(0, 36), match='<html><h1>what the fuck!</h1></html>'>
>>> 
re.match(p, s).group(3) 'what the fuck!'

3.利用取名字的方法進行匹配:類似於分組:

>>> s
'<html><h1>what the fuck!</h1></html>'
>>> p = r"<(?P<key1>.+)><(?P<key2>.+)>(.+)</(?P=key2)></(?P=key1)>"
#取名為key1、key2
>>> re.match(p, s)
<_sre.SRE_Match object; span=(0
, 36), match='<html><h1>what the fuck!</h1></html>'>#匹配成功 >>> re.match(p, s).group(3) 'what the fuck!'#輸出第三個分組

相關推薦

python表示式——分組的使用

在正則表示式裡可以利用分組進行匹配,舉例如下: 1.利用分組匹配郵箱地址: >>> s = "[email protected]" >>> p =

關於python表示式中匹配分組的問題

在爬取網頁資訊時,我們不妨會用到Python正則表示式。之前一直沒有太明白關於正則表示式匹配分組的問題,今天終於搞清楚了,所以特意寫一下讓自己印象深刻。 myPage = requests.get(url).content.decode("gbk") 通過requests我們在網頁得到了這樣

Python 表示式,re模組,match匹配(預設從開頭匹配),分組

  單個字元: 數量詞: 匹配開頭、結尾: 匹配分組:   demo.py(正則表示式,match從開頭匹配,分組,分組別名): # coding=utf-8 import re # 小括號()表示分組 \1表示取出第

python表示式匹配分組的使用

正則表示式匹配分組等其他的情況 字元 功能 | 匹配左右任意一個表示式 (ab) 將括號中字元作為一個分組,可以和|一起使用(ab|cd)表示匹配括號內分組中的一個 \n

Python 表示式分組

正則表示式分組 分組就是用一對圓括號“()”括起來的正則表示式,匹配出的內容就表示一個分組。從正則表示式的左邊開始看,看到的第一個左括號“(”表示第一個分組,第二個表示第二個分組,依次類推,需要注意的是,有一個隱含的全域性分組(就是0),就是整個正則表示式。

python表示式中的分組 group

組是通過 "(" 和 ")" 元字元來標識的。 "(" 和 ")" 有很多在數學表示式中相同的意思;它們一起把在它們裡面的表示式組成一組。舉個例子,你可以用重複限制符,象 *, +, ?, 和 {m,n},來重複組裡的內容,比如說(ab)* 將匹配零或更多個重複的 "ab

python表示式的無捕獲分組(取消分組

在正則中,分組有重要的作用,但有時候,我們並不想要分組。比如,給定一系列的地址字串,要找出省份名稱。如:‘江蘇省蘇州市虎丘區馬澗路靠近白馬澗花園‘, ’廣西壯族自治區玉林市容縣’等。 程式碼如下: import re pattern_0 = re.co

Python表示式的簡單應用和示例演示

前一陣子小編給大家連續分享了十篇關於Python正則表示式基礎的文章,感興趣的小夥伴可以點選連結進去檢視。今天小編給大家分享的是Python正則表示式的簡單應用和示例演示,將前面學習的Python正則表示式做一個概括。 下面的栗子是用於提取高考日期,一般來說,我們填寫日期都會寫2018年6月7日,但

Python表示式初識(九)

繼續分享Python正則表示式的基礎知識,今天給大家分享的特殊字元是[\u4E00-\u9FA5],這個特殊字元最好能夠記下來,如果記不得的話通過百度也是可以一下子查到的。 該特殊字元是固定的寫法,其代表的意思是漢字。換句話說,只要字元中是漢字,就可以通過該字元進行匹配,該特殊字元也是用中括號括起來的。

Python 表示式:compile,match

本文以匹配×××ID為例,介紹re模組的compile與match的用法 複雜匹配 = re.compile(正則表示式): 將正則表示式例項化              +       

Python 表示式模組詳解

由於最近需要使用爬蟲爬取資料進行測試,所以開始了爬蟲的填坑之旅,那麼首先就是先系統的學習下關於正則相關的知識啦。所以將下面正則方面的知識點做了個整理。語言環境為Python。主要講解下Python的Re模組。 下面的語法我就主要列出一部分,剩下的在python官網直接查閱即可:docs.python.org

Python 表示式:search

本文介紹re模組的search的用法 複雜匹配 = re.compile(正則表示式): 將正則表示式例項化              +         re.search(

Python | 表示式的常見用法

正則表示式的常見用法分為兩塊內容,第一部分是一般具有正則的高階語言都支援的功能,第二部分講解Python所獨特具備的正則特性。   Part 1 正則表示式是由普通字元(例如字元a到z)以及特殊字元(稱為“元字元”)組成的文字模式。模式用於在搜尋文字時要匹配一個或多個字串。

python 表示式找出字串中的純數字

1、簡單的做法 >>> import re >>> re.findall(r'\d+', 'hello 42 I'm a 32 string 30') ['42', '32', '30'] 然而,這種做法使得字串中非純數字也會識別 >

python 表示式 簡介

python 正則表示式 簡介 1.正則表示式:描述字串排列的一套規則 2.可以使用正則表示式提取出所有滿足規則的字串 3.在python中使用re模組是實現在python正則表示式的功能 正則表示式的基礎知識: 1.原子 2.元字元 3.模式修正 原子 :原子是正則表示式中最基

Python 表示式:findall

本文以匹配×××IP為例,介紹re模組的findall的用法: 返回值->列表 複雜匹配 = re.compile(正則表示式): 將正則表示式例項化              +      &

Python表示式:re模組

正則表示式: 使用單個字串來描述、匹配一系列匹配某個句法規則的字串正則表.通常被用來檢索、替換那些符合某個模式(規則)的文字.python自1.5起提供了re模組,它提供了perl風格的正則表示式. re模組簡介 re.match函式 功能 嘗試從字串的起始位置開始匹配一個模式,如

Python 表示式:sub

作用:替換字串中的某字串 本文以 ‘×××’掩蓋手機號部分數字 為例,介紹re模組的sub的用法: 返回值 -> 列表 複雜匹配 = re.compile(正則表示式): 將正則表示式例項化              +&n

python表示式學習筆記

正則表示式 學習資源:https://github.com/EbookFoundation/free-programming-books/blob/master/free-programming-books-zh.md 正則表達例子: |    A|B 

python 表示式匹配特定浮點數

  def is_decimal(num): import re    #以數字開頭,小數點後保留1位數字或兩位數字或者沒有小數部分 dnumre = re.compile(r"""^[0-9]+(\.[0-9]{1,2})?$""") result = d