我试图添加一个“。”在从“.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
答案 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()