【问题标题】:The elegant way to replace specific characters in Python在 Python 中替换特定字符的优雅方法
【发布时间】:2013-08-28 14:38:54
【问题描述】:

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

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

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

【问题讨论】:

    标签: python replace char


    【解决方案1】:

    你想要这样的东西:

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

    【讨论】:

    • 正是这样!干杯!
    【解决方案2】:

    你可以用正则表达式来做到这一点:

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

    【讨论】:

    • 这个不替换,这个插入字符串
    猜你喜欢
    • 2015-10-12
    • 1970-01-01
    • 1970-01-01
    • 2017-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-07
    • 1970-01-01
    相关资源
    最近更新 更多