此模块的文档可以在Module:JoinText/doc创建
local p = {}
function p.join(frame)
-- n parameters, 1 separator, bool enable_return=True
-- local args = frame.args
local template_args = frame:getParent().args -- 模组参数
-- 默认无分隔符,直接联结文本
local separator = frame.args.sep or template_args.sep or ""
local enable_return = frame.args.enable_return or template_args.enable_return or false
local result = {} -- 输出
for i, arg in ipairs(template_args) do
if arg and arg ~= "" then
local str = arg
if not enable_return then -- 去除传入参数的前后空格
str = str:match "^%s*(.-)%s*$"
end
table.insert(result, str)
end
end
return table.concat(result, separator)
end
return p