删除字符串中除第一次出现之外的所有出现

Rya*_*yan 2 python regex string

在 Python 中,我希望<html>从字符串中删除所有“ ”(第一次出现除外)。

另外,我希望</html>从字符串中删除所有“ ”(最后一次出现除外)。

<html> 可以是大写,所以我需要它不区分大小写。

我最好的方法是什么?

Sve*_*ach 5

要从<html>string 中删除除第一次出现之外的所有内容s,您可以使用以下代码:

substr = "<html>"
try:
    first_occurrence = s.index(substr) + len(substr)
except ValueError:
    pass
else:
    s = s[:first_occurrence] + s[first_occurrence:].replace(substr, "")
Run Code Online (Sandbox Code Playgroud)

除了最后一次出现的 之外的所有内容</html>都可以以类似的方式删除:

substr = "</html>"
try:
    last_occurrence = s.rindex(substr)
except ValueError:
    pass
else:
    s = s[:last_occurrence].replace(substr, "") + s[last_occurrence:]
Run Code Online (Sandbox Code Playgroud)

您可能希望用空格而不是空字符串替换出现的内容。