str="[ [\"3014\",\"Null\",\"0-16-087\"], [\"1999\",\"10\",\"0-06-074\"] ]"
addItem :: a -> [[a]] -> [[a]]
addItem item ls = (init ls)++(((last ls)++item:[]):[])
eval :: [Char] -> [[[Char]]] -> [Char] -> Bool -> [[[Char]]]
eval [] out _ _ = out
eval (x:xs) out str flag = case x of
'[' -> eval xs (out++[[]]) str flag
']' -> eval xs out str flag
',' -> eval xs out str flag
'"' -> if flag then eval xs (addItem str out) "" False
else eval xs out str True
x -> eval xs out (str++(x:[])) flag
stringToList = tail (eval str [] "" False)
*Main> :load eval.hs
[1 of 1] Compiling Main ( eval.hs, interpreted )
Ok, modules loaded: Main.
*Main> stringToList
[ ["3014","Null","0-16-087"], ["1999","10","0-06-074"] ]
これを
VB でやりたい・・・。