2017-03-10 14 views

答えて

4

あなたが探しているテーブルを返します。これは、(あなたのLuaのバージョンによって異なります)loadまたはloadstringて文字列を実行することができます。ここでは

local t = "{{2173,1},{2160,5}}" 
t = (loadstring or load)("return "..t)() 
print(#t) -- 2 
+0

「loadstringまたはload'ですか? –

+0

も働いています!そして確かに簡単な方法で!ニース! –

+0

Lua 5.1では、 'load(loadまたはloadstring)'は 'load'と評価され、' load'は関数を引数として求めます。 'load(" return ")'は実行時エラーを引き起こします。 –

2

は、入力のためのアドホックなソリューションです。あなたは与えました:

local s = "{{2173,1},{2160,5}}" 
local t = {} 
local n = 0 
for a,b in s:gmatch("(%d+),(%d+)") do 
     n = n + 1 
     t[n] = {a,b} 
end 
for k,v in ipairs(t) do print(k,v[1],v[2]) end 
+0

が働いた!ありがとう!! –

+1

@ LuaTeam91、良い。ところで、別のユーザー名を使用したいと思います... – lhf

関連する問題