Skip to main content
 首页 » 编程设计

python替换字符串中的特定元素

2025年05月04日20jillzhang

我有一个字符串'1472_1 2014-6-19',我想用'Normal'这个词替换下划线之后的任何数字(在本例中是数字1),我做了什么是找到我要替换的元素的索引:

print line.replace(line[line.find('_') + 1:line.find(' ')],'Normal', 1) 

但是我得到的不是 '1472_Normal 2014-6-19',而是 'Normal472_1 2014-6-19' 似乎我的代码替换了第一个 1 而不是下划线之后的那个。

我已阅读这篇文章:Replacing specific words in a string (Python)但仍然想知道是否有一种方法可以指定要替换的元素而不是使用正则表达式?

要明确下划线后的数字可以是 0 到 237 之间的任何数字

请您参考如下方法:

你可以使用 str.partition():

first, delimiter, second = line.partition('_') 
a, s, b = second.partition(' ') 
print first + delimiter + 'Normal' + s + b