luafunction stringsplitdelimiter local result = local pattern = - delimiter local start = 1 local split_start split_end = stringfindself pattern start while split_start do ta
可以将函数中的delimiter参数改为"\n",如下所示:
function string:split()
local result = {}
local pattern = "(.-)" .. "\n" .. "()"
local start = 1
local split_start, split_end = string.find(self, pattern, start)
while split_start do
table.insert(result, string.sub(self, start, split_start-1))
start = split_end
split_start, split_end = string.find(self, pattern, start)
end
table.insert(result, string.sub(self, start))
return result
end
然后在使用时,可以直接调用split()函数,不需要传递参数。如下所示:
local str = "hello\nworld\nlua"
local result = str:split()
for _, v in ipairs(result) do
print(v)
end
输出结果为:
hello
world
lua
``
原文地址: http://www.cveoy.top/t/topic/dswu 著作权归作者所有。请勿转载和采集!