python中re.sub的使用 --解读一段代码
json='{ title: "条纹针织衫+蓬蓬裙套装", picSrc: "http://d05.res.meilishuo.net/pic/_o/15/f5/f2e233bba04513eb355f2995a3a9_640_900.cf.jpg_00fd9b08_s7_450_680.jpg", twitterId: "3741620043" }'
print re.sub(r'(,?)(\w+?): ',r"\1'\2':",json)
疑惑:这里的正则r‘(,?)(\w+?): ’ 和 r'\1'\2''是什么意思?
首先r的意思是row data ,原始数据,就是不用转义的
(,?)(\w+?): 该正则的意思就是 先匹配0或者1次,;然后再匹配无数个字母或者数字 0次或者1次
把这两次的匹配分成 1组 和 2组
对于这个json \1 没有任何东西 是个空字符串,(,?)里的,也可以写成# 反正就是让他输出空串
\2 匹配到:前面的key
所以在key前面加单引号 就成了\1'\2'
posted on 2015-10-20 16:43 ggbond1988 阅读(894) 评论(0) 编辑 收藏 举报