python字符串用其出现编号替换字母

python字符串用其出现编号替换字母,python,string,Python,String,假设我有一个字符串Hello,world,我想用它的出现号替换o的所有实例,即得到一个sting:Hell1,w2rld 我已找到如何引用编号的组,\g,但它确实需要组号 有没有办法用python实现我想要的功能 更新:很抱歉没有提到我确实在寻找一个regexp解决方案,而不仅仅是一个字符串。我已经标记了我最喜欢的解决方案,但是感谢所有的贡献,他们很酷 你不需要正则表达式,一个简单的循环就足够了: 样本=你好,世界 模式='o' 输出= 计数=1 对于样本中的字符: 如果char==模式: 输出

假设我有一个字符串Hello,world,我想用它的出现号替换o的所有实例,即得到一个sting:Hell1,w2rld

我已找到如何引用编号的组,\g,但它确实需要组号

有没有办法用python实现我想要的功能


更新:很抱歉没有提到我确实在寻找一个regexp解决方案,而不仅仅是一个字符串。我已经标记了我最喜欢的解决方案,但是感谢所有的贡献,他们很酷

你不需要正则表达式,一个简单的循环就足够了:

样本=你好,世界 模式='o' 输出= 计数=1 对于样本中的字符: 如果char==模式: 输出+=strcount 计数+=1 其他: 输出+=字符 打印输出 >>>Hell1,w2rld 使用itertools.count

例:

例如:


拆分字母o上的字符串,并通过在每个零件前面添加零件索引(第一个零件除外)重新组装:

string = "Hello World"

result = "".join(f"{i or ''}"+part for i,part in enumerate(string.split("o")))
输出:

print(result)

# Hell1 W2rld

谢谢,那太棒了!谢谢,太酷了,我不知道我能通过一个定制的替换类。我选择了另一种解决方案,但增加了对你的投票
string = "Hello World"

result = "".join(f"{i or ''}"+part for i,part in enumerate(string.split("o")))
print(result)

# Hell1 W2rld