模块:Array

来自希灵百科
星臣讨论 | 贡献2017年1月16日 (一) 03:16的版本 (创建页面,内容为“local p = {} function p.parse(string) local ret = mw.text.split(string:gsub('@@','\1'),'@') for i, v in pairs(ret) do ret[i] = v:gsub('\1','@') end return ret...”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

这是一个工具模块,它能够处理一种特殊定义的数组语法,从而提高其他模板/模块的易用性。

语法

A@B@C 表示一个带有A、B、C三个元素的数组。

parse 函数

将以上述语法表示的字符串数组转换为Lua的表。


local p = {}

function p.parse(string)
	local ret = mw.text.split(string:gsub('@@','\1'),'@')
	for i, v in pairs(ret) do
		ret[i] = v:gsub('\1','@')
	end
	return ret
end

return p