0

私はPythonを初めて使用するので、これがばかげた質問である場合はご容赦ください。

いくつかの検索と置換を実行しているXMLファイルがあります。置き換える必要があるものの1つは、スペースの後に[と[[の前にスペースがない)です。次のことを試しましたが、エラーが発生し続けます。

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 に答える