不要丢掉写代码的想象力

这几天出现了很少一部分用户通讯录上传到服务端,再传给第三方的时候发生解析错误, 查看了错误文件, 里面由于有特殊符号, 客户端加了转义, 导致无法解析成json字符串, 但是木已成舟, 只能看看有什么方法来清洗这些数据了.
数据格式是这样的
[{"name":"xxxx","mobile":"11111,2222"},{"name":"zzzzz","mobile":"11111123,3322"}]
主要是名字那里出现了\"之类的, 变成一坨字符串之后真觉得没思路, 首先尝试了一下把所有\"替换成空字符串, 只是解决了部分问题, 还有其他特殊符号. 看来这条路行不通了, 然后我仔细观察了下数据的结构, 发现这个结构其实挺简单, 就是很简单的key, value结构, 而且很单一, 后来我想了下, 只要把所有特殊符号去除 ,只保留最基本的骨架结构:
{name : xxxx,mobile:1111,2222},{name:zzzzz,mobile:11111123,3322}
再把name替换成{"name":" mobile 替换成","mobile":", }替换"}, 这样就清洗成功了.
这里主要做了一个逆向思路, 先去除所有, 再拼装上有用的.

你可能感兴趣的:(不要丢掉写代码的想象力)