Skip to main content
 首页 » 编程设计

Python:如何替换第 i 个到第 j 个匹配项的字符

2025年05月04日12zengkefu

例如,如果我有:

"+----+----+---+---+--+" 

是否可以将第二到第四个+替换成-?

如果我有

"+----+----+---+---+--+" 

我想拥有

"+-----------------+--+" 

我必须将第 2 到第 4 个 + 替换为 -。是否可以通过正则表达式实现这一点?以及如何?

请您参考如下方法:

如果您可以假设第一个字符始终是 +:

string = '+' + re.sub(r'\+', r'-', string[1:], count=3) 

删除字符串的第一个字符和 sub() 前三个 + 字符,然后重新添加初始 +。

如果你不能假设第一个+是字符串的第一个字符,先找到它:

prefix = string.index('+') + 1 
string = string[:prefix] + re.sub(r'\+', r'-', string[prefix:], count=3)