更多操作
无编辑摘要 |
无编辑摘要 |
||
第1行: | 第1行: | ||
local getArgs = require('Module:Arguments').getArgs | local getArgs = require('Module:Arguments').getArgs | ||
local genres = require('Module:GlobalVars').genres | |||
local p = {} | local p = {} | ||
function p.replace(str, target, result) | function p.replace(str, target, result) | ||
第27行: | 第10行: | ||
function p.isKeyInTable(keyToCheck) | function p.isKeyInTable(keyToCheck) | ||
for key in pairs( | for key in pairs(genres) do | ||
if key == keyToCheck then | if key == keyToCheck then | ||
return true | return true | ||
第47行: | 第30行: | ||
for key, value in pairs(arr) do | for key, value in pairs(arr) do | ||
if p.isKeyInTable(value) then | if p.isKeyInTable(value) then | ||
ret = ret.."[[:分类:类型/".. | ret = ret.."[[:分类:类型/"..genres[value].."|"..genres[value].."]][[分类:类型/"..genres[value].."]] " | ||
else | else | ||
ret = ret..value.."[[分类:类型/缺少类型]] " | ret = ret..value.."[[分类:类型/缺少类型]] " |
2025年3月31日 (一) 15:12的版本
此模块的文档可以在模块:GetGenres/doc创建
local getArgs = require('Module:Arguments').getArgs
local genres = require('Module:GlobalVars').genres
local p = {}
function p.replace(str, target, result)
local res = str:gsub(target, result)
return res
end
function p.isKeyInTable(keyToCheck)
for key in pairs(genres) do
if key == keyToCheck then
return true
end
end
return false
end
function p.split(str, separator)
local fields = {}
local temp = str:gsub(", ", ",")
temp:gsub("[^"..separator.."]+", function(c) fields[#fields + 1] = c end)
return fields
end
function p.exec(str)
local arr = p.split(str, ",")
local ret = ""
for key, value in pairs(arr) do
if p.isKeyInTable(value) then
ret = ret.."[[:分类:类型/"..genres[value].."|"..genres[value].."]][[分类:类型/"..genres[value].."]] "
else
ret = ret..value.."[[分类:类型/缺少类型]] "
end
end
mw.logObject(ret)
return ret
end
function p.getGenres(frame)
local args = getArgs(frame)
return p.exec(args[1])
end
return p