替换Python中特定字符的优雅方法

时间:2013-08-28 14:38:54

标签: python replace char

我的字符串在字符内容方面是不可预测的,但我知道每个字符串只包含一个字符'*'。

如何使用一些非硬编码字符串替换'*'后面的两个字符。非硬编码字符串实际上是计算校验和并转换为字符串:

checksum_str = str(hex(csum).lstrip('0x'))

2 个答案:

答案 0 :(得分:1)

你想要这样的东西:

star_pos = my_string.find('*')
my_string = my_string[:star_pos] + '*' + checksum_str + my_string[star_pos + 3:]

答案 1 :(得分:1)

您可以使用正则表达式执行此操作:

import re
my_string = re.sub(r'(?<=\*)..', checksum_str, my_string, 1)