Python:从正则表达式中排除空格



如何从regex中排除空格,但不会忽略特殊字符。我当前的代码是:-

pattern=re.compile("[^w]")
var = pattern.sub('', var)

我知道w将删除所有空白字符,但如何仅排除空格?

示例:

var = "hi this is test!@#$%%^^"

正则表达式之后,它将变为:

var = "hi this is test"
[^a-zA-Zds]

这会删除所有内容,留下字母、数字和空格。

为什么不只是re.compile('s')

如果我理解得对,您希望删除所有字符,而不是单词字符或分隔它们的空格。如果这是正确的,那么下面的方法似乎可以奏效:

var = "hi this is test!@#$%%^^"
pattern=re.compile("[^w ]")
var = pattern.sub('', var)

这里唯一的变化是,我在方括号内的^w后面添加了一个空格。当我运行这个时,我得到以下结果:

>>> print var
hi this is test

最新更新