“模块:PageName”的版本间的差异
跳到导航
跳到搜索
| 第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. | + | 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