溫馨提示×

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

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

Python學(xué)習(xí)教程:在字符串的開頭和結(jié)尾處做文本匹配

發(fā)布時(shí)間:2020-08-06 23:03:02 來源:ITPUB博客 閱讀:155 作者:千鋒Python唐小強(qiáng) 欄目:編程語言

Python學(xué)習(xí)教程:在字符串的開頭和結(jié)尾處做文本匹配

我們需要在字符串的開頭和結(jié)尾處按照指定的文本模式做檢查,例如檢查文件的擴(kuò)展名、URL協(xié)議類型等。

Python學(xué)習(xí)教程:在字符串的開頭和結(jié)尾處做文本匹配

有一種簡(jiǎn)單的方法可用來檢查字符串的開頭或結(jié)尾,只要使用str.startswith()和str.endswith()方法就可以了。

實(shí)例:

filename='mark.txt'
url='http://www.baidu.com'
print(filename.endswith('.txt'))
print(url.startswith('https:'))

運(yùn)行結(jié)果:

True
False

需要需要同時(shí)針對(duì)多個(gè)選項(xiàng)做檢查,只需要給startswith()和endswith()提供包含可能選項(xiàng)的元組即可:

url='http://www.baidu.com'
print(url.startswith(('https:','http:')))

結(jié)果:

True

注意:多個(gè)選項(xiàng)只能使用元組,如果使用列表或集合,請(qǐng)首先使用tuple()將它們轉(zhuǎn)化為元組,否則會(huì)報(bào)錯(cuò)。

有時(shí)候我們也比較傾向于使用正則表達(dá)式作為替代方案,例如:

import re
url='http://www.baidu.com'
url2='utp://xxxxxx'
m=re.match('https:|http:|ftp',url)
m2=re.match('https:|http:|ftp',url2)
print(m)
print(m2)

結(jié)果:

<re.Match object; span=(0, 5), match='http:'>
None

這也行得通,但是通常對(duì)于簡(jiǎn)單的匹配來說,這種方式過于重量級(jí),使用startswith()、endswith()會(huì)更簡(jiǎn)單,運(yùn)行也更快。


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

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

AI