Arrays 使用JSON数据初始化数组-lua

Arrays 使用JSON数据初始化数组-lua,arrays,json,lua,Arrays,Json,Lua,我想像JSON数据一样初始化我的数组值,当我尝试不正确初始化时,这里是我的代码 我的JSON值 [{"ShiftCode":"1","ShiftName":"BREAKFAST"}, {"ShiftCode":"2","ShiftName":"LUNCH"}, {"ShiftCode":"2","ShiftName":"LUNCH"}, {"ShiftCode":"3","ShiftName":"DINNER"}, {"ShiftCode":"3","ShiftName":"DINN

我想像JSON数据一样初始化我的数组值,当我尝试不正确初始化时,这里是我的代码

我的JSON值

 [{"ShiftCode":"1","ShiftName":"BREAKFAST"},
 {"ShiftCode":"2","ShiftName":"LUNCH"}, 
 {"ShiftCode":"2","ShiftName":"LUNCH"},
 {"ShiftCode":"3","ShiftName":"DINNER"},
 {"ShiftCode":"3","ShiftName":"DINNER"}] 
我试着如下

 shiftArr={'[[[{"ShiftCode":"1","ShiftName":"BREAKFAST"},{"ShiftCode":"2","ShiftName":"LUNCH"},{"ShiftCode":"2","ShiftName":"LUNCH"},{"ShiftCode":"3","ShiftName":"DINNER"},{"ShiftCode":"3","ShiftName":"DINNER"}]]]'};

它不起作用,我应该做什么进一步的更改?

我假设您想将JSON数据解析到Lua表中。如果是,请尝试以下代码:

J=[[
[{"ShiftCode":"1","ShiftName":"BREAKFAST"},
 {"ShiftCode":"2","ShiftName":"LUNCH"}, 
 {"ShiftCode":"2","ShiftName":"LUNCH"},
 {"ShiftCode":"3","ShiftName":"DINNER"},
 {"ShiftCode":"3","ShiftName":"DINNER"}] 
]]

L={}
n=0
for t in J:gmatch("%b{}") do
    n=n+1
    L[n]={}
    for k,v in t:gmatch('"(.-)":"(.-)"') do
        L[n][k]=v   
    end
end

@Fazil,尝试在内部循环中添加
print(n,k,v)
。@Fazil在这里工作!请在你的评论中具体说明,“它不起作用”并没有说明问题所在。如果运行代码,您将得到一个包含5个子表的表,每个子表都有两个键,与JSON中显示的值关联。