python将字符添加到文件名

时间:2012-05-21 18:59:40

标签: python

我试图添加一个“。”在从“.html”

开始向后发生的最后一个整数之后

import os
import glob
import re
for name in glob.glob('*.html'):
  newname = re.compile('name(.*?)(\d+)')
os.rename(name, newname)

从以下位置更改文件名:

1cor12.html
gen1.html

为:

1cor.12.html
gen.1.html

3 个答案:

答案 0 :(得分:3)

应该做的事情:

re.sub('(\d+)(?=\.html)', r'.\1', s)

答案 1 :(得分:2)

这是你想要的吗?

re.sub(r'(\d+\.html)',r'.\1',r'1cor12.html')

注意,这仅适用于您希望“.html”前面的数字 的情况。换句话说,这对“gen1a.html”无效。

如果你想匹配后一种情况('gen1a.html')你可能会做类似的事情:

re.sub(r'(\d+\D*\.html)',r'.\1',r'1cor12.html')

答案 2 :(得分:0)

newname = "%s.%s.html" % re.match(r"(.*)(\d+)\.html", oldname).groups()