如果我想从以下单词中删除引号:
don't
hello'
world'
如何制作它以便我只删除第2和第3个引用。即我想这样做,如果它没有被两个字母包围并且得到这样的最终结果,我只会引用引号:
don't
hello
world
希望这是有道理的。
答案 0 :(得分:1)
你可以试试这个:
string = "hello'"
if string[-1] == "'":
string = string[:len(string) - 2]
答案 1 :(得分:0)
您可以使用regex
执行此操作,但它确实不需要它。如果这是对您的问题的一种无辜的处理,请告诉我,但似乎您可以采取以下措施:
if not test_string.endswith("'"):
test_string.replace("'", "")
如果您真的想使用regex
(这可能是一个不错的选择,具体取决于您的应用程序),您可以这样做:
import re
re.sub('(?:(?<=\w)[\'\"](?:\W))|(?:(?<=\W)[\'\"](?:\w))', '', test_string)
答案 2 :(得分:0)
试试这个:
words = ["don't", "hello'", "world'"]
quotes = ["'", '"']
output = list()
for word in words:
if word[-1] in quotes:
word = word[: (len(word) - 1)]
output.append(word)
print output
#=> ["don't", "hello", "world"]
我假设您还想要处理不需要的报价也可以是双引号"
的情况,以及单引号。如果没有,你可以使用:
if word[-1] === "'":