0

我是python新手,所以如果这是一个愚蠢的问题,请原谅我:

我有一个 XML 文件,我正在执行一些搜索和替换。我需要替换的一件事是一个空格,后跟 [ 只是 [ (之前没有空格)。我尝试了以下但不断收到错误:

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

我假设它是因为方括号用于通配符,但我不知道语法应该是什么才能让它工作

任何帮助表示赞赏

谢谢

4

4 回答 4

2

这里根本不需要正则表达式。这会很好:

line = line.replace(' [', '[')
于 2013-01-29T17:22:52.190 回答
0

您需要[使用反斜杠转义:

line = re.sub(r' \[','[',line)
于 2013-01-29T17:22:51.227 回答
0
>>> line=' [stuff]'
>>> re.sub(' \[','[',line)
'[stuff]'
于 2013-01-29T17:23:37.007 回答
0

由于您使用sub的是正则表达式包,因此您需要转义括号,因为它用于表示正则表达式中的字符范围(例如 [az]):

line = re.sub(' \[','[',line)
于 2013-01-29T17:24:26.223 回答