Re模塊怎么支持python爬蟲的正則表達式

這篇文章給大家分享的是有關(guān)Re模塊怎么支持python爬蟲的正則表達式的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)主營通城網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP開發(fā)公司,通城h5成都小程序開發(fā)搭建,通城網(wǎng)站營銷推廣歡迎通城等地區(qū)企業(yè)咨詢

Python 自帶了re模塊,它提供了對正則表達式的支持。主要用到的方法列舉如下

#返回pattern對象
re.compile(string[,flag])  
#以下為匹配所用函數(shù)
re.match(pattern, string[, flags])
re.search(pattern, string[, flags])
re.split(pattern, string[, maxsplit])
re.findall(pattern, string[, flags])
re.finditer(pattern, string[, flags])
re.sub(pattern, repl, string[, count])
re.subn(pattern, repl, string[, count])

本篇文章以兩個最常用的方法進行舉例介紹

1.re.match(pattern, string[, flags])

這個方法將會從 string(我們要匹配的字符串)的開頭開始,嘗試匹配pattern,一直向后匹配,如果遇到無法匹配的字符,立即返回None,如果匹配未結(jié)束已經(jīng)到達string的末尾,也會返回None。兩個結(jié)果均表示匹配失敗,否則匹配pattern成功,同時匹配終止,不再對string向后匹配。下面我們通過一個例子理解一下

__author__ = 'CQC'
# -*- coding: utf-8 -*-
 
#導(dǎo)入re模塊
import re
 
# 將正則表達式編譯成Pattern對象,注意hello前面的r的意思是“原生字符串”
pattern = re.compile(r'hello')
 
# 使用re.match匹配文本,獲得匹配結(jié)果,無法匹配時將返回None
result1 = re.match(pattern,'hello')
result2 = re.match(pattern,'helloo CQC!')
result3 = re.match(pattern,'helo CQC!')
result4 = re.match(pattern,'hello CQC!')
 
#如果1匹配成功
if result1:
    # 使用Match獲得分組信息
    print result1.group()
else:
    print '1匹配失??!'
 
 
#如果2匹配成功
if result2:
    # 使用Match獲得分組信息
    print result2.group()
else:
    print '2匹配失??!'
 
 
#如果3匹配成功
if result3:
    # 使用Match獲得分組信息
    print result3.group()
else:
    print '3匹配失?。?#39;
 
#如果4匹配成功
if result4:
    # 使用Match獲得分組信息
    print result4.group()
else:
print '4匹配失??!'

運行結(jié)果

hello
hello
3匹配失??!
Hello

 

2.re.search(pattern, string[, flags])

search 方法與match方法極其類似,區(qū)別在于match ()函數(shù)只檢測re是不是在string的開始位置匹配,search ()會掃描整個string查找匹配,match()只有在0位置匹配成功的話才有返回,如果不是開始位置匹配成功的話,match ()就返回None。同樣,search方法的返回對象同樣match ()返回對象的方法和屬性。我們用一個例子感受一下

#導(dǎo)入re模塊
import re
 
# 將正則表達式編譯成Pattern對象
pattern = re.compile(r'world')
# 使用search()查找匹配的子串,不存在能匹配的子串時將返回None
# 這個例子中使用match()無法成功匹配
match = re.search(pattern,'hello world!')
if match:
    # 使用Match獲得分組信息
    print match.group()
### 輸出 ###
# world

感謝各位的閱讀!關(guān)于Re模塊怎么支持python爬蟲的正則表達式就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

當前文章:Re模塊怎么支持python爬蟲的正則表達式
分享鏈接:http://bm7419.com/article28/iihjcp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)網(wǎng)站設(shè)計公司、企業(yè)建站、App設(shè)計、云服務(wù)器網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司