1

次のPHP文字列があります。

"{'何とか':1178,'何とか':0,'何とか':260,'何とか':0,'needWrapper':

{'NEED':'TEXTNEED','NEED':'TEXTNEED'}, '何とか':'何とか'}"

編集:うまくいけば読みやすくするために分割しました

そこから「NEED: TEXTNEED」と「NEED: TEXTNEED」の部分文字列を取得する必要があります。正規表現や爆発などを使用してそれを行う良い方法があるように感じますが、エレガントで実用的なソリューションをうまくまとめることができません。どんな助けでも大歓迎です。

4

1 に答える 1

3

一重引用符を二重引用符に置き換えると、jsonで解析できます。

import json

s = "{'blah':1178,'blah':0,'blah':260,'blah':0,'needWrapper':{'NEED':'TEXTNEED','NEED':'TEXTNEED'}, 'blah':'blah'}"

print json.loads(s.replace("'", '"'))
# {u'blah': u'blah', u'needWrapper': {u'NEED': u'TEXTNEED'}}

これで、オブジェクトにアクセスできます。

ソースがphpからのものである場合、二重引用符で囲まれたオブジェクトを使用して有効なJSONを生成できるはずです: http ://www.php.net/manual/en/function.json-encode.php

于 2012-05-17T05:37:51.613 に答える