作者b60413 (None)
看板RegExp
标题[讨论] JSON Parse
时间Tue Oct 7 20:47:04 2014
我有一笔很大的json资料(万笔以上)需要parse,
可是实际上每次在存取时,
都只是需要其中的10几笔资料,
一次将资料转换成JSON物件又会吃掉很多记忆体,
所以想要用正规式做字串分析,
但写出来的正规式实在又臭又长,
因此想跟板友讨教是否有更简便的写法,
最大的问题在於每笔资料的第18栏可能是阵列,
导致无法使用\[.*?\]来切割,
资料内容大约如下:
{
"0000001":[1,2,0,0,0,0,0,0,0,0,0,0,1,1,"0.0","0.0",3,0,
0,0,0,0,7],
"0000002":[2,2,0,0,0,0,0,0,0,0,0,0,1,1,"0.0","0.0",3,0,
1,0,0,0,7],
"0000003":[3,2,0,0,0,0,0,0,0,0,0,0,1,1,"0.0","0.0",3,0,
[1,1,1],0,0,0,7]
}
目前使用的正规式如下:
\"(0000002|0000003)\":\[((.+?),+){18}(?(?=\d+).+?|\[.+?\]).*?\]
--
http://www.myspace.com/soundtrack0220
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.32.136.171
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/RegExp/M.1412686027.A.4A9.html
1F:→ CindyLinz: "(0000002|0000003)":(.*,){18}(\[.*?\]|[^,]*) 10/08 16:57
2F:→ CindyLinz: "(0000002|0000003)":(.*?,){18}(\[.*?\]|[^,]*) 10/08 17:00