將所有出現的一個子字串替換為另一個子字串

Python 的 str 型別還有一種方法,用於將一個子字串的出現替換為給定字串中的另一個子字串。對於要求更高的情況,可以使用 re.sub

str.replace(old, new[, count])

str.replace 接受兩個引數 oldnew,其中包含 old 子字串,該子字串將被 new 子字串替換。可選引數 count 指定要進行的替換次數:

例如,為了用以下字串中的'spam'替換'foo',我們可以用 old = 'foo'new = 'spam'呼叫 str.replace

>>> "Make sure to foo your sentence.".replace('foo', 'spam')
"Make sure to spam your sentence."

如果給定的字串包含多個與 old 引數匹配的示例,則所有出現的內容都將替換為 new 中提供的值:

>>> "It can foo multiple examples of foo if you want.".replace('foo', 'spam')
"It can spam multiple examples of spam if you want."

當然,除非我們為 count 提供價值。在這種情況下,count 事件將被取代:

>>> """It can foo multiple examples of foo if you want, \
... or you can limit the foo with the third argument.""".replace('foo', 'spam', 1)
'It can spam multiple examples of foo if you want, or you can limit the foo with the third argument.'