我有一个txt
文件,其中包含以下文字:
5; 2; 8; 3;
我需要使用;
作为分隔符来获取数值,并将它们放入数组中。怎么可以实现呢?
答案 0 :(得分:4)
最简单的方法是使用string.gmatch
来匹配数字:
local example = "5;2;8;3;"
for i in string.gmatch(example, "%d+") do
print(i)
end
输出:
5
2
8
3
具有特定Split
功能的“更难”的方式:
function split(str, delimiter)
local result = {}
local regex = string.format("([^%s]+)%s", delimiter, delimiter)
for entry in str:gmatch(regex) do
table.insert(result, entry)
end
return result
end
local split_ex = split(example, ";")
print(unpack(split_ex))
输出:
5 2 8 3