我正在用 python 3 编写一个脚本来自动重命名文件。但我对正则表达式中捕获的组有疑问。
我有这些类型的文件:
test tome 01 something.cbz
test tome 2 something.cbz
test tome 20 something.cbz
Run Code Online (Sandbox Code Playgroud)
我想要:
test 001 something.cbz
test 002 something.cbz
test 020 something.cbz
Run Code Online (Sandbox Code Playgroud)
我尝试了几段代码:
示例1:
name = re.sub('tome [0]{0,1}(\d{1,})', str('\\1').zfill(3), name)
Run Code Online (Sandbox Code Playgroud)
结果是:
test 01 something.cbz
test 02 something.cbz
test 020 something.cbz
Run Code Online (Sandbox Code Playgroud)
示例2:
name = re.sub('tome (\d{1,})', str('\\1').lstrip("0").zfill(3), name)
Run Code Online (Sandbox Code Playgroud)
结果是:
test 001 something.cbz
test 02 something.cbz
test 020 something.cbz
Run Code Online (Sandbox Code Playgroud)