“模块:PageName”的版本间的差异

来自iFx Wiki
跳到导航 跳到搜索
第5行: 第5行:
 
     parent, name = s:match("^(.+)/(.+)$")
 
     parent, name = s:match("^(.+)/(.+)$")
 
     return parent, name
 
     return parent, name
 +
end
 +
 +
function p.rsplit(s)
 +
    return s:match("^([^/]+)/(.+)$")
 
end
 
end
  
第21行: 第25行:
 
     if type_flag then
 
     if type_flag then
 
         local base, sub
 
         local base, sub
         base, sub = p.split(full_name)
+
         base, sub = p.rsplit(full_name)
 
         if base then
 
         if base then
 
             return type_flag, base, sub
 
             return type_flag, base, sub

2020年12月31日 (四) 21:21的版本

此模块的文档可以在模块:PageName/doc创建

p = {}

function p.split(s)
    local parent, name
    parent, name = s:match("^(.+)/(.+)$")
    return parent, name
end

function p.rsplit(s)
    return s:match("^([^/]+)/(.+)$")
end

local type2name = {
['W'] = "世界观",
['X'] = "联动"
}

function p.type_name(s)
    return type2name[s]
end

function p.parse(s)
    local type_flag, full_name
    type_flag, full_name = s:match("^([XW])/(.+)$")
    if type_flag then
        local base, sub
        base, sub = p.rsplit(full_name)
        if base then
            return type_flag, base, sub
        else
            return type_flag, full_name, nil
        end
    else
        return nil, nil, s
    end
end

return p