今日提醒
2025年4月4日星期五

报名提醒

  • 「排位赛」 距参赛报名结束4小时+

周常活动

新工具上线

  • 淬炼模拟测试版已经上线,没有经过大量测试,大佬们有空可以玩一玩,发现bug可在页面下方留言

注:若不希望弹窗提醒可在设置页面关闭全站弹窗
今日不再提醒
bugfix250107.1
全站通知:

模块:Split

来自咸鱼之王WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索

此模块的文档可以在模块: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