我应该如何删除字符串_ y _ _ o _
中的空格,以便仅删除字母周围的空格而不删除“_”符号之间的空格?
答案 0 :(得分:0)
使用正则表达式:
def hangman(word, letters):
replace = r'[%s]' % ''.join(letters)
return re.sub(replace, '_', word)
答案 1 :(得分:0)
通过re.sub。
>>> import re
>>> re.sub(r'(?<=[A-Za-z])\s+|\s+(?=[A-Za-z])', '', '_ y _ _ o _')
'_y_ _o_'
(?<=[A-Za-z])\s+
仅匹配一个或多个空格字符,如果它以字母开头。 |
或匹配\s+(?=[A-Za-z])
匹配一个或多个后跟字母的空格。
或强>
>>> re.sub(r'\s*([A-Za-z]+)\s*', r'\1', '_ y _ _ o _')
'_y_ _o_'