在某一文件夾內有97個sql文件,所有都以統一格式命名,例如「A201222-廣州李小龍記念協會-1-廣州李小龍記念協會-2018.AUD」正則表達式
因爲有兩段重複了,並且中間的「1」也沒有意義,須要刪掉,保留爲「A201222-廣州李小龍記念協會-2018.AUD」sql
由於工做上的緣由,以後還繼續會出現這種狀況,因此下面我就寫一個程序去批量修改spa
import os path = ('輸入文件路徑') f = os.listdir(path) #將文件名提取爲一個列表當中 k = 0 n = 0 for i in f: oldname = f[n] matchObj = oldname.split('-') #若是是面對複雜一點的結構,能夠用正則表達式re.match('(A\d+\-)(.*\-1\-)(.*)',string),而後取其group(1)和group(3) if matchObj[2]!='2018.AUD':#由於文件夾內有幾個文件通過手工修改,已經符合要求,因此這裏寫一個判斷 newname = matchObj[0] + '-' + matchObj[4] os.rename(path+'\\'+oldname,path+'\\'+newname) k+=1 else: pass n+=1 print('已經修改了%d個文件名'% k)