Lua单步将字符串拆分为二维数组
我有以下字符串Lua单步将字符串拆分为二维数组,lua,lua-table,Lua,Lua Table,我有以下字符串 abc=1.2;bcd=2.4;xyz=10.9 我想把它分成下表 { {"abc", "1.2}, {"bcd", "2.4"}, {"xyz", "10.9"} } 我目前正在做这件事,首先通过拆分字符串
abc=1.2;bcd=2.4;xyz=10.9
我想把它分成下表
{ {"abc", "1.2}, {"bcd", "2.4"}, {"xyz", "10.9"} }
我目前正在做这件事,首先通过拆分字符串然后按=
在PHP中,我可以使用以下preg_match
模式在一个步骤中完成此操作,而无需迭代。在Lua有可能做到这一点吗
preg_match_all("/(?:([a-z]+)=([0-9.]+)(?:;|$))/", $a, $match, PREG_SET_ORDER);
试试这个:
s="abc=1.2;bcd=2.4;xyz=10.9"
s=s..";"
t={}
for k,v in s:gmatch("(.-)=(.-);") do
t[#t+1]={k,v}
end
非常感谢。这比我目前的解决方案要好得多。目前我使用的是table.insert(t,{k,v})
。是t[#t+1]={k,v}
优于表格。插入?@joycebab,表格。插入即可。