擅长:python、mysql、java
<p>如果你真的要让公牛队上膛。。。这个数据(见我的评论),你最好用正则表达式加上缺少的引号。像<code>r"([a-zA-Z_][a-zA-Z_0-9]*)\s*\:"</code>来找到引用<s>和<code>r"\'\1\'\:"</code>作为替换的东西(我必须从头开始测试)</s>。在</p>
<p>编辑:在python3.1中对向后引用进行了一些麻烦之后,我终于让它使用这些:</p>
<pre><code>>>> pattern = r"([a-zA-Z_][a-zA-Z_0-9]*)\s*\:"
>>> test = '{"foo": {bar: 1}}'
>>> repl = lambda match: '"{}":'.format(match.group(1))
>>> eval(re.sub(pattern, repl, test))
{'foo': {'bar': 1}}
</code></pre>