pattern = r'[ -\\[\\]]'
regex = re.compile(pattern)
name = '123[ shiv'
new_name = regex.sub('_',name)
给出结果(new_name)::
'_____shiv'
代替::
'123__shiv'
.. thanx提前
答案 0 :(得分:5)
您的正则表达式正在创建从whitespace
(ASCII代码 - 32)到opening bracket - [
(ASCII代码 - 91)的范围介于两者之间-
。该范围包括数字0 to 9
(ASCII代码 - 48到57)。
您需要将正则表达式更改为: -
pattern = '[- \\[\\]]'
在开头移动了-
。