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

来自iFx Wiki
跳到导航 跳到搜索
(=p.rsplit)
第1行: 第1行:
p = {}
+
local p = {}
  
 
function p.split(s)
 
function p.split(s)

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

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

local 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