从字符串中删除所有特殊字符、标点和空格

2024-04-19 22:29:19 发布

您现在位置:Python中文网/ 问答频道 /正文


Tags: python
3条回答

这可以在不使用regex的情况下完成:

>>> string = "Special $#! characters   spaces 888323"
>>> ''.join(e for e in string if e.isalnum())
'Specialcharactersspaces888323'

您可以使用^{}

S.isalnum() -> bool

Return True if all characters in S are alphanumeric
and there is at least one character in S, False otherwise.

如果您坚持使用regex,其他解决方案也可以。不过,请注意,如果可以在不使用正则表达式的情况下完成,则这是最好的方法。

较短的路径:

import re
cleanString = re.sub('\W+','', string )

如果要将单词和数字之间的空格替换为''

下面是一个正则表达式,用于匹配不是字母或数字的字符串:

[^A-Za-z0-9]+

下面是执行regex替换的Python命令:

re.sub('[^A-Za-z0-9]+', '', mystring)

相关问题 更多 >