首页
随机
登录
设置
关于DJMAX中文资料库
免责声明
DJMAX中文资料库
搜索
查看“︁模块:Regex”︁的源代码
←
模块:Regex
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
local p = {} local getArgs = require('Module:Arguments').getArgs local function errMsg(s) return '<span class="error">' .. tostring(s) .. '</span>' end function p.match(frame) local args = getArgs(frame) local str = args[1] or '' local pattern = args[2] or '' local fmt = args[3] or '$1' local noMatch = args[4] or '' if str == '' or pattern == '' then return noMatch or errMsg('缺少文本或正则') end local caps = {str:match(pattern)} if #caps == 0 then return noMatch or errMsg('正则未匹配到任何内容') end if not fmt:find('$%d') then return fmt end local out = fmt for i = 1, #caps do out = out:gsub('$' .. i, caps[i]) end return out end function p.replace(frame) local args = getArgs(frame) local str = args[1] or '' local pattern = args[2] or '' local replace = args[3] or '' if str == '' or pattern == '' or replace == '' then return errMsg('缺少文本、正则或替换内容') end local ok, res = pcall(function() return (str:gsub(pattern, replace)) end) if not ok then return errMsg(res) end return res end return p
该页面使用的模板:
模块:Regex/doc
(
查看源代码
)
返回
模块:Regex
。