擅长:python、mysql、java
<p>下面是一个字符串修复程序,它在加载JSON之后工作。它处理任何长度的类似UTF-8的序列,并忽略看起来不像UTF-8序列的转义序列。在</p>
<p>示例:</p>
<pre><code>import json
import re
def fix(bad):
return re.sub(ur'[\xc2-\xf4][\x80-\xbf]+',lambda m: m.group(0).encode('latin1').decode('utf8'),bad)
# 2- and 3-byte UTF-8-like sequences and onen correct escape code.
json_text = '''\
{
"something":"text \\u00ce\\u00b2 text \\u00e4\\u00bd\\u00a0\\u597d..."
}
'''
data = json.loads(json_text)
bad_str = data[u'something']
good_str = fix(bad_str)
print bad_str
print good_str
</code></pre>
<p>输出:</p>
^{pr2}$