尝试搜索和替换“[”左方括号

1 投票
4 回答
4671 浏览
提问于 2025-04-17 14:05

我刚开始学Python,所以如果这个问题很傻,请多多包涵:

我有一个XML文件,我需要在里面进行很多搜索和替换。其中一项需要替换的是一个空格后面跟着一个[,我想把它替换成只有[(前面没有空格)。我试过以下方法,但总是出错:

line = re.sub(' [','[',line)

我猜是因为方括号在这里被用作通配符,但我不知道应该用什么语法才能让它正常工作。

任何帮助都非常感谢。

谢谢!

4 个回答

0

因为你在使用正则表达式包里的 sub 函数,所以你需要对括号进行转义。括号在正则表达式中用来表示字符范围,比如 [a-z] 表示从 a 到 z 的所有小写字母。

line = re.sub(' \[','[',line)
0
>>> line=' [stuff]'
>>> re.sub(' \[','[',line)
'[stuff]'

当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。

3

这里根本不需要用到正则表达式。这个就可以很好地解决问题:

line = line.replace(' [', '[')

撰写回答