Input 在Lua中,有没有好的方法来读取方括号中的数字?

Input 在Lua中,有没有好的方法来读取方括号中的数字?,input,lua,Input,Lua,在Lua中,如果我知道数字的数量,有没有什么好方法可以从输入中只读数字,比如“[1,2,3,4]” 我对每一个都执行了io.read(“*n”),但它只返回零值 local num = io.read() for i = 1, num do print(io.read("*n")) end 为此,代码输入为 4 [1,1,15,54] 输出为 nil nil nil nil 我想 1 1 15 54 我是否应该将string.find和sub与“,”一起使用?如果确定输入中没有空

在Lua中,如果我知道数字的数量,有没有什么好方法可以从输入中只读数字,比如“[1,2,3,4]”

我对每一个都执行了io.read(“*n”),但它只返回零值

local num = io.read()
for i = 1, num do
    print(io.read("*n"))
end
为此,代码输入为

4
[1,1,15,54]
输出为

nil
nil
nil
nil
我想

1
1
15
54

我是否应该将string.find和sub与“,”一起使用?

如果确定输入中没有空格,可以使用以下代码:

local num = io.read()
for i = 1, num do
    io.read(1)
    print(io.read("*n"))
end
第一个
io.read(1)
[
,下一个读逗号。结尾的
]
未读

阅读整行内容并对其进行分析更为稳健:

local num = io.read()
local lin = io.read()
local i=0
for w in lin:gmatch("%d+") do
    i=i+1
    print(i,w)
end
您是否真的在问“如何在Lua中解析JSON?”如果是,您可能希望避免重新发明这个轮子: