[討論] JSON Parse

看板RegExp (正規表示式 Regular Expression)作者 (None)時間10年前 (2014/10/07 20:47), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/2 (看更多)
我有一筆很大的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://www.ptt.cc/bbs/RegExp/M.1412686027.A.4A9.html

10/08 16:57, , 1F
"(0000002|0000003)":(.*,){18}(\[.*?\]|[^,]*)
10/08 16:57, 1F

10/08 17:00, , 2F
"(0000002|0000003)":(.*?,){18}(\[.*?\]|[^,]*)
10/08 17:00, 2F
文章代碼(AID): #1KC-3BIf (RegExp)
討論串 (同標題文章)
以下文章回應了本文
完整討論串 (本文為第 1 之 2 篇):
0
2
文章代碼(AID): #1KC-3BIf (RegExp)