用Python将所有特殊字符和空格替换为单个“-”

3

我正在尝试用单个“-”替换字符串中的所有特殊字符和空格。

例如:

输入:"Games & Fun"

输出:"Games-Fun"

我尝试过

>>> re.sub('[&" "]', '-', "Games & Fun")
'Games---Fun'

但是我只想要"Games-Fun"

有人能帮我吗?


2
如果你使用类似于\W+的非单词字符会怎样? - summea
2个回答

12
>>> import re
>>> text = "Games & Fun"
>>> re.sub(r'\W+', '-', text)
'Games-Fun'

2
>>> re.sub(r'[&\s]+', '-', "Games & Fun")
'Games-Fun'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接