我想擴大「博士」變成「醫生」或「驅動器」以清除混淆。Python:替換一個簡單的字符串?
string = 'Dr. Seuss Dr.'
if string[0:3] == "Dr.":
new_string = 'Doctor Seuss Dr.'
if string[:3] == "Dr.":
another_string = 'Dr. Seuss Drive'
有沒有更好的方法來擴大「博士」?如果字符串是'我喜歡蘇斯博士',我無法處理案件!
我想擴大「博士」變成「醫生」或「驅動器」以清除混淆。Python:替換一個簡單的字符串?
string = 'Dr. Seuss Dr.'
if string[0:3] == "Dr.":
new_string = 'Doctor Seuss Dr.'
if string[:3] == "Dr.":
another_string = 'Dr. Seuss Drive'
有沒有更好的方法來擴大「博士」?如果字符串是'我喜歡蘇斯博士',我無法處理案件!
像這樣?
mystring = 'Dr. Seuss Dr.'
if 'Dr.' in mystring:
mystring = mystring.replace('Dr.', 'Doctor', 1).replace('Dr.', 'Drive')
第一隻更換替換Dr.
一次(注意添加額外的參數)。
感謝shantanoo指出有一個模塊string
等變量名應該避免這樣的詞。我已將變量更改爲mystring
。
+1很容易忘記'.replace'需要一個計數參數 – 2013-03-03 07:34:14
這真是太棒了! – user1899415 2013-03-03 07:34:56
@ user1899415很高興我可以幫助:) – TerryA 2013-03-03 07:35:21
我想你想要將Dr.
轉換成Doctor
,如果它在字符串的開頭。否則,您需要將Dr.
轉換爲Driver
。
您可以使用正則表達式來實現這一目標:
import re
string = 'Dr. Seuss Dr.'
string = re.sub(re.compile('^Dr.'), 'Doctor', string)
string = re.sub(re.compile('Dr.$'), 'Driver', string)
#now string contains 'Dr. Seuss Drive'
什麼是你的問題? – squiguy 2013-03-03 07:16:14
這是玩具程序/鍛鍊還是現實世界的使用? – NPE 2013-03-03 07:42:20