替换匹配的单词python

时间:2016-02-03 10:51:45

标签: python python-2.7

我有这个说法:

XMLStreamConstants.END_ELEMENT

它应该用'Exit'替换Exit,但如果我有另外一个像退出的单词,它也会取代它'Exit'。我只想要它取代没有退出的确切的“退出”。克服这个问题的最佳方法是什么?

感谢。

4 个答案:

答案 0 :(得分:3)

您可以使用带有字边界( var colorvar = document.getElementById('box1'); colorvar.addEventListener("click", function() { if (document.getElementById("box1").style.height == "auto") { document.getElementById("box1").style.height = document.getElementById("box1").style.height = "50px"; } else { document.getElementById("box1").style.height = document.getElementById("box1").style.height = "auto"; } }); )字符的regular expression。此外,无需\b检查;如果单词不在字符串中,则不会替换任何内容。

if

您还可以使用标志来使匹配大小写不敏感,或使用回调函数来确定替换

>>> import re
>>> s = "he exited through the exit"
>>> re.sub(r"\bexit\b", "'exit'", s)
"he exited through the 'exit'"

答案 1 :(得分:0)

请使用re

import re
replaced_name=re.sub(r"\bExit\b","`Exit`",name)

答案 2 :(得分:0)

<强>输入:

name = ['dr.doom','spiderman',"Exit", 'exited']

if "Exit" in name:
    index = name.index("Exit")
    name.pop(index)
    name.insert(index, "'Exit'")

print(name)

<强>输出:

['dr.doom', 'spinderman', "'Exit'", 'exited']

答案 3 :(得分:-1)

我应该这样写:

if name == "Exit":
   replace_name = name.replace("Exit","`Exit`")
   name = replace_name