用python重命名文件 - 正则表达式

ber*_*ard 3 python regex rename file

我想用python重命名1k文件.它们都是somejunkDATE.doc格式

基本上,我想删除所有的垃圾,只留下日期.我不确定如何匹配目录中的所有文件.

谢谢

gho*_*g74 7

如果您的日期格式始终相同,只需使用切片

>>> file="someJunk20101022.doc"
>>> file[-12:]
'20101022.doc'
>>> import os
>>> os.rename(file, file[-12:]
Run Code Online (Sandbox Code Playgroud)

如果要检查数字是否为有效日期,请传递file[-12:-3]timedatetime模块进行检查.

假设您的文件都在目录中(没有子目录)

import os
import glob
import datetime,time #as required
os.chdir("/mypath")
for files in glob.glob("*.doc"):
    newfilename = files[-12:]
    # here to check date if desired
    try:
       os.rename(files,newfilename)
    except OSError,e:
       print e
    else: print "ok"
Run Code Online (Sandbox Code Playgroud)