主頁 > 知識庫 > Python文件名的匹配之clob庫

Python文件名的匹配之clob庫

熱門標簽:陜西金融外呼系統(tǒng) 公司電話機器人 廣告地圖標注app 海南400電話如何申請 激戰(zhàn)2地圖標注 唐山智能外呼系統(tǒng)一般多少錢 騰訊外呼線路 哈爾濱ai外呼系統(tǒng)定制 白銀外呼系統(tǒng)

一、前言

既然在Pathlib庫中提到了glob()函數(shù),那么我們就專門用一篇內(nèi)容講解文件名的匹配。其實我們有專門的一個文件名匹配庫就叫:glob。

不過,glob庫的API非常小,但是僅僅應(yīng)用于文件名的匹配綽綽有余。只要是在實際的項目中需要過濾,或者匹配一組文件,都可以使用該庫進行操作。

二、通配符

星號(*)

話不多說,下面我們使用通配符來匹配文件名,示例如下:

import glob

for name in sorted(glob.glob('text/*')):
    print(name)

運行之后,效果如下:

這里不僅用*通配符獲取了目錄下的所有文件,而且還對其進行了排序。

三、問號(?)

問號(?)是用來匹配單字的,比如我們賽選上面1開頭的圖片文件。示例如下:

import glob

for name in glob.glob('text/1?.png'):
    print(name)

運行之后,效果如下:

四、區(qū)間匹配([0-9][a-z][A-Z])

從上面兩個匹配我們看出來,glob庫的匹配規(guī)則與正則表達式有些相似。既然它能匹配模糊的,一個或多個字符,那么肯定也可以匹配區(qū)間字符。

示例如下:

import glob

for name in glob.glob('text/15[a-z].*'):
    print(name)

運行之后,效果如下:

五、轉(zhuǎn)義元字符

當然,上面的文件名都是常規(guī)的文件名,都是用字母與數(shù)字組成的。但是,有些人比較怪,可能在文件名中包含了特殊的字符,比如上面的匹配字符“?*[”等。那怎么辦呢?用反斜杠“\”轉(zhuǎn)義嗎?

其實,我們還有更簡單的,直接使用escape()函數(shù)進行操作。示例如下:

import glob

escape_str='?*[]'
for char in escape_str:
    pattern = 'text/*' + glob.escape(char) + '.png'
    for name in glob.glob(pattern):
        print(name)

運行之后,效果如下:

到此這篇關(guān)于Python文件名的匹配之clob庫的文章就介紹到這了,更多相關(guān)Python lob庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python文件名匹配與文件復制的實現(xiàn)
  • Python通過fnmatch模塊實現(xiàn)文件名匹配
  • Python3標準庫glob文件名模式匹配的問題
  • Python中g(shù)lob庫實現(xiàn)文件名的匹配

標簽:惠州 益陽 黑龍江 黔西 四川 鷹潭 上海 常德

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Python文件名的匹配之clob庫》,本文關(guān)鍵詞  Python,文件名,的,匹配,之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python文件名的匹配之clob庫》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python文件名的匹配之clob庫的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章