將所有出現的一個子字串替換為另一個子字串
Python 的 str
型別還有一種方法,用於將一個子字串的出現替換為給定字串中的另一個子字串。對於要求更高的情況,可以使用 re.sub
。
str.replace(old, new[, count])
:
str.replace
接受兩個引數 old
和 new
,其中包含 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.'