gpt4 book ai didi

python - 使用正则表达式替换命令在文件名字符串中小于 10 的数字前面插入前导零

转载 作者:太空狗 更新时间:2023-10-30 01:22:56 24 4
gpt4 key购买 nike

我无法弄清楚如何使用替换命令来完成这项工作,这是我被指示要做的。我将此文本用作变量:

text = 'file1, file2, file10, file20'

我想搜索文本并在任何小于 10 的数字前替换为零。我想我可以做 if 语句,这取决于 re.match 或 findall 是否只会在文本后找到一位数字,但我似乎无法执行。这是我的起始代码,我在其中尝试将字符串和数字提取到组中,并且只提取那些只有一位数字的文件名:

import re
text = 'file1, file2, file10, file20'
mtch = re.findall('^([a-z]+)(\d{1})$',text)

但是没用

最佳答案

您可以将 re.substr.zfill 一起使用:

>>> text = 'file1, file2, file10, file20'
>>> re.sub(r'(\d+)', lambda m : m.group(1).zfill(2), text)
'file01, file02, file10, file20'
#or
>>> re.sub(r'([a-z]+)(\d+)', lambda m : m.group(1)+m.group(2).zfill(2), text)
'file01, file02, file10, file20'

关于python - 使用正则表达式替换命令在文件名字符串中小于 10 的数字前面插入前导零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18191633/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com