模組:沙盒/a2569875/Test5
==1==
- 001u2573x48 0
- 123
local p={}
require('Module:Module wikitext')._addText('==1==\n*001\u2573\x48\t0\n*123\n')
--{{#invoke:沙盒/a2569875/Test5|contentModel}}
function p.contentModel(frame)
local page_name = frame.args[1] or frame.args['1'] or ''
local page_data = (mw.text.trim(page_name)==''and mw.title.getCurrentTitle() or mw.title.new(page_name))
return page_data.contentModel
end
--{{#invoke:沙盒/a2569875/Test5|checkJSON}}
function p.checkJSON(frame)
local page_name = frame.args[1] or frame.args['1'] or ''
local page_data = (mw.text.trim(page_name)==''and mw.title.getCurrentTitle() or mw.title.new(page_name))
if mw.ustring.lower(page_data.contentModel)=='json' then
local wikitext = require('Module:Special wikitext').getJSONwikitext(page_data:getContent())
local cats = require('Module:Delcat').find_category(wikitext)
return '"'.. page_data.fullText ..'":['..table.concat( cats, ',')..']'
end
return ''
end
--{{#invoke:沙盒/a2569875/Test5|checkPage}}
function p.checkPage(frame)
local chk_name = frame.args[1] or frame.args['1'] or ''
local cur_name = frame.args[2] or frame.args['2'] or ''
if mw.text.trim(chk_name or '')==''then return '' end
return p._checkPage(chk_name, cur_name) and '1' or ''
end
function p._checkPage(page, srcpage)
local chk_page, cur_page = mw.title.new(page), (mw.text.trim(srcpage or '')=='' and mw.title.getCurrentTitle() or mw.title.new(srcpage))
local chk_name, cur_name = '##:'..chk_page.fullText, '##:'..cur_page.fullText
local chk_reg = mw.ustring.gsub(chk_name,'([%%\\])','%1%1')
local chk_regs, cur_names = chk_reg..(mw.ustring.sub(chk_reg,-1,-1)=='/'and''or'/'), cur_name..(mw.ustring.sub(cur_name,-1,-1)=='/'and''or'/')
local findpos = mw.ustring.find(cur_name, chk_reg)
if (tonumber(findpos) or -1) > 0 then findpos = mw.ustring.find(cur_names, chk_regs)end
return (tonumber(findpos) or -1) > 0
end
return p;