例如,如果我有:
"+----+----+---+---+--+"
是否可以将第二到第四个+
替换成-
?
如果我有
"+----+----+---+---+--+"
我想拥有
"+-----------------+--+"
我必须将第 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)
关于Python:如何替换第 i 个到第 j 个匹配项的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46118886/