模块:Split:修订间差异
跳到导航
跳到搜索
(创建页面,内容为“local module = {} local getArgs = require('Module:Arguments').getArgs function module._main(args, frame) local str = args['str'] or '' local ptn = args['ptn'] or '' ptn = mw.text.decode(mw.text.unstripNoWiki(ptn)) local name = args['name'] or 'foo' if args['reg'] ~= 'on' then ptn = mw.ustring.gsub(ptn, '([%%%(%)%.%+%-%*%?%[%]%^%$])', '%%%1') end local datas = mw.text.split(str, ptn) for i, v in ipairs(datas) do v = mw.ustring.gsub(v, '^%s*(.+)%s*$…”) |
(没有差异)
|
2022年4月12日 (二) 10:52的最新版本
此模块的文档可以在模块:Split/doc创建
local module = {}
local getArgs = require('Module:Arguments').getArgs
function module._main(args, frame)
local str = args['str'] or ''
local ptn = args['ptn'] or ''
ptn = mw.text.decode(mw.text.unstripNoWiki(ptn))
local name = args['name'] or 'foo'
if args['reg'] ~= 'on' then
ptn = mw.ustring.gsub(ptn, '([%%%(%)%.%+%-%*%?%[%]%^%$])', '%%%1')
end
local datas = mw.text.split(str, ptn)
for i, v in ipairs(datas) do
v = mw.ustring.gsub(v, '^%s*(.+)%s*$', '%1')
frame:callParserFunction( '#vardefine', name..i, v)
end
frame:callParserFunction( '#vardefine', name..'.count', #datas)
end
function module.main(frame)
local args = getArgs(frame)
return module._main(args, frame)
end
return module