簡體   English   中英

Python替換字符串的一部分

[英]Python replacing parts of string

我在編寫使用3個非空字符串,base,target和rep的python函數replace_str遇到麻煩。

第一個字符串base表示要更新的基本字符串。 第二個字符串target表示您要替換的目標字符串,第三個字符串rep表示將替換更新后的字符串中的目標的字符串。

該函數生成一個新字符串,其中target字符串被base字符串中的rep字符串替換,但是如果滿足以下任一條件,則生成相同的base字符串。

•如果在base字符串中找不到target字符串,或者,

•如果targetrep是相同的字符串。

不允許使用字符串方法replacefind

這是我到目前為止的內容:

def replace_str(base, target, rep): m = 0 n = len(target) if base[m:n] == target: new_base = base[0:m] + rep + base[n:] return replace_str(new_base, target, rep) else: m = m + 1 n = n + 1 return replace_str(base, target, rep)

如果可以使用split ,為什么不這樣呢?

"rep".join("target1 other string target2".split("target"))

split方法返回由目標分隔的元素列表。 join作用相反:它通過在每個元素之間插入字符串從列表構造字符串。

您可以在此處查看這些功能的文檔:

https://docs.python.org/2/library/stdtypes.html#str.split

https://docs.python.org/2/library/stdtypes.html#str.join

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM