置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:Split

猛汉♂百科,万男皆可猛的百科全书!转载请标注来源页面的网页链接,并声明引自猛汉百科。内容不可商用。
跳到导航 跳到搜索
Template-info.svg 模块文档  [创建] [刷新]
  1. local module = {}
  2. local getArgs = require('Module:Arguments').getArgs
  3. function module._main(args, frame)
  4. local str = args['str'] or ''
  5. local ptn = args['ptn'] or ''
  6. ptn = mw.text.decode(mw.text.unstripNoWiki(ptn))
  7. local name = args['name'] or 'foo'
  8. if args['reg'] ~= 'on' then
  9. ptn = mw.ustring.gsub(ptn, '([%%%(%)%.%+%-%*%?%[%]%^%$])', '%%%1')
  10. end
  11. local datas = mw.text.split(str, ptn)
  12. for i, v in ipairs(datas) do
  13. v = mw.ustring.gsub(v, '^%s*(.+)%s*$', '%1')
  14. frame:callParserFunction( '#vardefine', name..i, v)
  15. end
  16. frame:callParserFunction( '#vardefine', name..'.count', #datas)
  17. end
  18. function module.main(frame)
  19. local args = getArgs(frame)
  20. return module._main(args, frame)
  21. end
  22. return module