Module:Sandbox/CAS222222221
Appearance
require('Module:No globals')
local getArgs = require('Module:Arguments').getArgs
local p = {}
local function dateCov(inp)
local months = {'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'}
for i, v in ipairs(months) do
if string.find(inp, '^%a+ %d%d?, %d%d%d%d.*$') then else break end
local pattern = '^(' .. v .. ' %d%d?, %d%d%d%d)(.*)$'
if string.find(inp, pattern) then
local _, _, a, b = string.find(inp, pattern)
return mw.language.new('zh'):formatDate('Y年Mj日', a, nil) .. b
end
end
for i, v in ipairs(months) do
if string.find(inp, '^%d%d? %a+ %d%d%d%d.*$') then else break end
local pattern = '^(%d%d? ' .. v .. ' %d%d%d%d)(.*)$'
if string.find(inp, pattern) then
local _, _, a, b = string.find(inp, pattern)
return mw.language.new('zh'):formatDate('Y年Mj日', a, nil) .. b
end
end
if string.find(inp, '^%d%d%d%d%-%d%d%-%d%d.*$') then
local _, _, a, b = string.find(inp, '^(%d%d%d%d%-%d%d%-%d%d)(.*)$')
return mw.language.new('zh'):formatDate('Y年Mj日', a, nil) .. b
end
for i, v in ipairs(months) do
if string.find(inp, '^%a+ %d%d%d%d.*$') then else break end
local pattern = '^(' .. v .. ' %d%d%d%d)(.*)$'
if string.find(inp, pattern) then
local _, _, a, b = string.find(inp, pattern)
return mw.language.new('zh'):formatDate('Y年M', a, nil) .. b
end
end
if string.find(inp, '^%d%d%d%d%-%d%d.*$') then
local _, _, a, b = string.find(inp, '(%d%d%d%d%-%d%d)(.*)')
return mw.language.new('zh'):formatDate('Y年M', a, nil) .. b
end
return inp
end
function p.main(frame)
local args = getArgs(frame)
return p._main(args)
end
function p._main(args)
-- Main module code goes here.
return dateCov(args[1])
end
return p