溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python用正則表達(dá)式篩選網(wǎng)頁(yè)內(nèi)容的方法

發(fā)布時(shí)間:2020-09-02 13:47:51 來(lái)源:億速云 閱讀:342 作者:小新 欄目:編程語(yǔ)言

這篇文章主要介紹了python用正則表達(dá)式篩選網(wǎng)頁(yè)內(nèi)容的方法,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

一、正則表達(dá)式簡(jiǎn)述:

什么是正則表達(dá)式?正則表達(dá)式就是可以匹配文本片段的模式,最簡(jiǎn)單的正則表達(dá)式就是一個(gè)字符串,用于在文本中匹配到此字符串自身。

二、常用正則表達(dá)式:

設(shè)計(jì)正則表達(dá)式的時(shí)候有幾個(gè)注意點(diǎn)如下:

a.特殊符號(hào)需要加轉(zhuǎn)移符:如要匹配'china.com',則正則表達(dá)式格式應(yīng)為'china\\.com';

b.字符集(使用中括號(hào)[]來(lái)包含字符串組成字符集):如[a-z]表示匹配從a到z之間的字符;此外,還有一個(gè)反轉(zhuǎn)字符集,使用^符號(hào)開頭:如[^abc]表示匹配除了a、b、c三個(gè)字符之外的字符;

c.選擇符:如要匹配'python'和'page',寫出來(lái)的模式為'python|page',其中‘|’是管道符號(hào);

d.子模式:如‘p(ython|age)’;

e.可選項(xiàng):在模式后面加上問(wèn)好(?),那該模式就變成了可選項(xiàng),即其可能出現(xiàn)在匹配到的字符串中,但是并非必須的,如r'(http://)?(www.)?shuhe.com'可匹配的結(jié)果有:

http://www.shuhe.com、http://shuhe.com、www.shuhe.com、shuhe.com

f.重復(fù)子模式:

(pattern)*:允許模式重復(fù)0次或多次

(pattern)+:允許模式重復(fù)1次或多次

(pattern){m,n}:允許模式重復(fù)m~n次

例如:

r'w*\.python\.org'匹配'www.python.org'、'.python.org'、'wwwwww.python.org'
r'w+\.python\.org'匹配'w.python.org';但不匹配'.python.org'
r'w{3,4}\.python\.org'只能匹配'www.python.org'和'wwww.python.org'

三、re模板的使用:

在python中封裝了一些常用的正則表達(dá)式在re模板中,使用時(shí)只需將該模板引入到當(dāng)前項(xiàng)目中即可:

python用正則表達(dá)式篩選網(wǎng)頁(yè)內(nèi)容的方法

上述是re中常用的正則表達(dá)式,使用步驟為:

1.先將正則表達(dá)式的字符串形式編譯為Pattern實(shí)例;

2.然后使用Pattern實(shí)例處理文本并獲得匹配結(jié)果(一個(gè)Match實(shí)例);

3.最后使用Match實(shí)例獲得信息,進(jìn)行其他的操作。

例如:

# encoding: UTF-8  
import re  
   
# 將正則表達(dá)式編譯成Pattern對(duì)象  
pattern = re.compile(r'hello')  
   
# 使用Pattern匹配文本,獲得匹配結(jié)果,無(wú)法匹配時(shí)將返回None  
match = pattern.match('hello world!')  
   
if match:  
    # 使用Match獲得分組信息  
    print match.group()  
   
### 輸出 ###  
# hello

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享python用正則表達(dá)式篩選網(wǎng)頁(yè)內(nèi)容的方法內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問(wèn)題就找億速云,詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI