2012-04-03 28 views

答えて

3

あなたが'None'にすべてNoneを変更しているので、それだけではJSON文字列でstr.replaceを使用する方が簡単ではないでしょうか?私は2つの手順でそれを実行すると、最初に'None'Noneに変更し、None'None'に変更します。

+0

thats私が今やっていることはthatsですが、私は正規表現がすべてのことをワンショットで行うことができると確信しています – daydreamer

2

あなたは否定先読みアサーション(?!...)使用することができます。これは、限り、それが直接'が続かないようNoneと一致します

import re 

test = "type: None or 'None'" 

result = re.sub(r"None(?!')", r"'None'", test) 

を。

→ Regular Expression Syntax ←

+1

ます。また、変更されている '' 'None'''は ''する' 'None'''' –

+0

@He Shiming恩赦私は、私はそれを更新しました。 –

+0

2番目の例では、Noneの直前または直後にある文字を '文字で置き換えます。 "(1、None、2)"のようなものは "(1'None'2)"になります。これは元のJSONファイルでは問題にはならないかもしれません。なぜなら、いつもNoneのインスタンスの周りにスペースがあるかもしれないからですが、私はそれが言及する価値があると思いました。 –

0
s/([^'])?(None)([^'])?/$1'$2'$3/g 
関連する問題