如何替换字符串中的第二次迭代-Python

时间:2019-04-17 20:59:46

标签: python string

我试图从字符串中删除一个单词,但前提是它是第二个单词。这是一个示例:

我尝试剥离并替换。切片不会起作用,因为Preds有时可能不在同一个地方。

# Complete the function to remove the word PREDS from the given string
# ONLY if it's not the first word and return the new string
def removePREDS(mystring):
    return mystring.replace("PREDS", ' ')

# expected output: PREDS Rocks
print(removePREDS('PREDS Rocks'))

# expected output: Hello, John
print(removePREDS('Hello, PREDSFan'))

我可以同时删除Preds和第一个,但不知道如何删除第二个

1 个答案:

答案 0 :(得分:1)

功能

def remove_if_not_starts_from(src, substr):
    return src if src.startswith(substr) else src.replace(substr, '')

用法:

str1 = 'Lorem ipsum'
str2 = 'ipsum Loremipsum'
word = 'Lorem'

print('{} -> {}'.format(str1, remove_if_not_starts_from(str1, word)))
print('{} -> {}'.format(str2, remove_if_not_starts_from(str2, word)))

输出:

Lorem ipsum -> Lorem ipsum
ipsum Loremipsum -> ipsum ipsum