Python正则表达式从字符串中删除除括号外的非字母数字字符

Python正则表达式从字符串中删除除括号外的非字母数字字符,python,regex,Python,Regex,我有下面的正则表达式,它从字符串文本中删除所有非字母数字字符 re.sub(r'[^a-zA-Z0-9]',' ', text) 如何修改此表达式以在字符串文本中包含字符“[”和“]”?将[,]添加到带转义的Character类([..]) re.sub(r'[^a-zA-Z0-9\[\]]',' ', text) 例如: >>> re.sub(r'[^a-zA-Z0-9\[\]]', ' ', 'a,b[c-d]!') 'a b[c d] '

我有下面的正则表达式,它从字符串文本中删除所有非字母数字字符

re.sub(r'[^a-zA-Z0-9]',' ', text)

如何修改此表达式以在字符串文本中包含字符“[”和“]”?

[
]
添加到带转义的Character类(
[..]

re.sub(r'[^a-zA-Z0-9\[\]]',' ', text)
例如:

>>> re.sub(r'[^a-zA-Z0-9\[\]]', ' ', 'a,b[c-d]!')
'a b[c d] '