在字符串的子串之前插入字符串
问题描述:
我想在字符串中的子串之前插入一些文本。在字符串的子串之前插入字符串
例如:
str = "thisissometextthatiwrote"
substr = "text"
inserttxt = "XX"
我想:
str = "thisissomeXXtextthatiwrote"
假设SUBSTR只能在STR出现一次,我怎么能达到这个结果?有一些简单的方法来做到这一点?
答
my_str = "thisissometextthatiwrote"
substr = "text"
inserttxt = "XX"
idx = my_str.index(substr)
my_str = my_str[:idx] + inserttxt + my_str[idx:]
PS:避免使用保留字(即你的情况str
)作为变量名
答
使用str.split(substr)
分裂海峡到['thisissome', 'thatiwrote']
,既然你想之前插入一些文本子串,所以我们加入“XXtext”((inserttxt+substr)
)。
所以最终的解决方案应该是:
>>>(inserttxt+substr).join(str.split(substr))
'thisissomeXXtextthatiwrote'
,如果你希望将一些文字追加后的子串,只需更换有:
>>>(substr+appendtxt).join(str.split(substr))
'thisissometextXXthatiwrote'
看看这个答案的http:/ /stackoverflow.com/a/24450558/1326943 – Charl
可能的重复[如何在给定的字符串中给定的索引插入一些字符串在Python](http://stackoverflow.com/questions/4022827/how-to-insert-some -string-in-the-given-string-at-given-index-in-python) – Dhina
@DhinakaranThennarasu这不是一个骗局,因为那个人不问如何找到substr – GreenAsJade