Python實用技法第21篇:在字符串的開頭和結尾處作文本匹配

上一篇文章: Python實用技法第20篇:針對任意多的分隔符拆分字符串
下一篇文章: Python實用技法第22篇:利用Shell通配符作字符串匹配

一、需求🙀

咱們須要在字符串的開頭和結尾處按照指定的文本模式作檢查,例如檢查文件的擴展名、URL協議類型等。

二、解決方案😸

有一種簡單的方法可用來檢查字符串的開頭或結尾,只要使用str.startswith()和str.endswith()方法就能夠了。正則表達式

實例:segmentfault

filename='mark.txt'
url='http://www.baidu.com'

print(filename.endswith('.txt'))
print(url.startswith('https:'))

運行結果:url

True
False

須要須要同時針對多個選項作檢查,只須要給startswith()和endswith()提供包含可能選項的元組便可:spa

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

結果:code

True
注意,多個選項只能使用元組,若是使用列表或集合,請首先使用tuple()將它們轉化爲元組,不然會報錯。

三、分析😈

有時候咱們也比較傾向於使用正則表達式做爲替代方案,例如:字符串

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)

結果:get

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

這也行得通,可是一般對於簡單的匹配來講,這種方式過於重量級,使用startswith()、endswith()會更簡單,運行也更快。it

上一篇文章: Python實用技法第20篇:針對任意多的分隔符拆分字符串
下一篇文章: Python實用技法第22篇:利用Shell通配符作字符串匹配
相關文章
相關標籤/搜索