python 正则表达式处理不规范json

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 正则表达式处理不规范json相关的知识,希望对你有一定的参考价值。

原字符串  { key1: "value", key2:"value", key3:"value"...}
需要把key1, key2, key3这种都加上引号,变成:
{ "key1": "value", "key2":"value", "key3":"value"...} 
 
实现代码:
before = { key1: "value", key2:"value", key3:"value"}
re_item = re.compile(r(?<=[{,])\w+)
after = re_item.sub("\"\g<0>\"", inputvalue)
搞定!
其中(?<=...)表示之前的字符串内容需要匹配表达式才能成功匹配,但是不消耗字符串内容
如(?<=[{,])表示在{或,之后的字符串
个人感觉正则表达式确实非常强大,用正则表达式写出的代码,可以用短小精悍来形容,但是缺点也很明显,就是代码可读性太差。

以上是关于python 正则表达式处理不规范json的主要内容,如果未能解决你的问题,请参考以下文章

python-正则表达式语法规范与案例

python 正则表达式 re模块基础

循环通过 python 正则表达式匹配

Python:使用JSON API链接通过正则表达式显示命名捕获组

Python处理正则表达式超时的办法

python成长之路第三篇_正则表达式