跳转到内容

模組:沙盒/Kcx36/sandbox

维基百科,自由的百科全书
local p = {}

local function useMCA(code)
    local parts = mw.text.split(code, "/")
    return not (parts[4] and parts[4]:match("^[45]")) and (code:match("000/000$") or #code <= 8)
end

function p.generateCitation(frame)
    local code = frame.args[1] or ""

    if useMCA(code) then
        local digits = code:gsub("000/000", ""):gsub("%D", "")
		local wikitext = string.format(
            "{{Cite web |url=https://dmfw.mca.gov.cn/9095/xzqh/getList?code=%s |title=行政区划搜索接口-{{PRC admin/plainname|%s}} |website=中国·国家地名信息库}}",
            digits, code
        )
        return frame:preprocess(wikitext)
    else
        local wikitext = string.format(
        	"{{Cite web|url=http://www.stats.gov.cn/sj/tjbz/tjyqhdmhcxhfdm/2023/{{#switch:{{PRC admin/level|%s}}|0=index|1={{PRC admin/stripcode|%s}}|#default={{PRC admin/stripcode|{{PRC admin/parent|%s}}}}/{{PRC admin/stripslashes|{{PRC admin/stripcode|%s}}}}}}.html|title=2023年{{PRC admin/plainname|%s}}统计用区划代码和城乡划分代码|publisher=[[国家统计局|中华人民共和国国家统计局]]|date=2023|language=zh-cn}}{{Dead link}}",
			code, code, code, code, code
        )
        return frame:preprocess(wikitext)
    end
end

return p