我最近开始摆弄 lua,但我一生都无法弄清楚这一点。
假设我有一个如下所示的字符串:
s = "a=x a=y b=z a=x"
我想删除所有重复项并将重复键的值合并到表中,以便我得到:
t = {
a = {x,y},
b = {z},
}
我已经思考这个问题太久了。如有任何帮助,我们将不胜感激!
最佳答案
试试这个:
s="a=x a=y b=z a=x"
s=s.." "
t={}
for k,v in s:gmatch("(.-)=(.-)%s+") do
if t[k]==nil then t[k]={} end
t[k][v]=true
end
for k,v in pairs(t) do
for z in pairs(v) do print(k,z) end
end
关于Lua,表 : merge values of duplicate keys and remove duplicates,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16278657/