0

我试图添加一个“。” 在最后一次出现从“.html”开始的整数之后

Python

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
4

3 回答 3

3

应该做的事情:

re.sub('(\d+)(?=\.html)', r'.\1', s)
于 2012-05-21T19:12:27.400 回答
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')
于 2012-05-21T19:04:00.147 回答
0
newname = "%s.%s.html" % re.match(r"(.*)(\d+)\.html", oldname).groups()
于 2012-05-21T21:00:03.870 回答