您的位置:首页 > 编程语言 > Lua

Lua 特殊字符串转成特殊表处理

2017-07-20 09:17 197 查看
"100,10;101,20" -->{"100" = 10, "101" = 20}

function combination(sourcestr)
if not sourcestr or sourcestr == "" then
return
end
local outsplitchar = ";"
local innersplit   = ","
local function inner_get_table_from_split_string(src, splitchar)
local splitlist = {}
string.gsub(src, '[^' .. splitchar ..']+', function(value) table.insert(splitlist, value) end)
return splitlist
end

local out_tbl = inner_get_table_from_split_string(sourcestr, outsplitchar)
local tmp={}
for _, value in pairs(out_tbl) do
local tmp_tbl = inner_get_table_from_split_string(value, innersplit)
local inner_tbl = {}
inner_tbl["" .. tmp_tbl[1]] = tonumber(tmp_tbl[2])
tmp[#tmp + 1] = inner_tbl
end
local final_tbl = {}
for k, v in pairs(tmp) do
final_tbl[table.keys(v)[1]] = table.values(v)[1]
end
return final_tbl
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: