Difference between revisions of "Module:Country extract"
imported>Plastikspork m (Protected "Module:Country extract": High-risk Lua module ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))) |
imported>Echarlie m (1 revision imported) |
(No difference)
|
Latest revision as of 18:18, 4 May 2017
Documentation for this module may be created at Module:Country extract/doc
local p = {} -- -- to enable us to replicate the current functioning of CountryAbbr and CountryAbbr2 -- We need to deal with -- 1 alternative names ISO 3166 should do that -- 2 {{<name>}} -- 3 [ [<name>] ] -- 4 [ [<name>|<junk>] ] -- 5 [ [image:flag of <country>.[svg|gif|png|jpg]|\d+px] ] -- function p.extractCountry(frame) local string= mw.ustring.toNFC (frame.args[1]) local match=nil; match = mw.ustring.match(string, "Flag of ([^\.]*)") if (match) then return match end -- () for Cocos (Keeling) Islands -- ' For People's -- . for U.S. etc. match = mw.ustring.match(string, "(%u[%a\(\)\.' -]+)") if (match == "Image") then string = mw.ustring.gsub(string, match, "") match = mw.ustring.match(string, "[\|\[](%u[%a\(\)\.' -]+)") end if (match == "20px") then string = mw.ustring.gsub(string, match, "") match = mw.ustring.match(string, "\[(%u[%a\(\)\.' -]+)") end if (match) then return match end return string end --[[ ]] function p.extractSubdivision(frame) local string= mw.ustring.toNFC (frame.args[1]) local match=nil; -- Needed for {{flag|Greenland}}, match = mw.ustring.match(string, "Flag of ([^\.]*)") if (match) then return match end -- . needed for Washington D.C. -- ' for cote d'azur -- leading ' for 'Aden -- ‘ and trailing ' for Şan‘ā' match = mw.ustring.match(string, "('?[%u][%a'‘ \.\,-]+[%a\.'\d]+)") if (match) then return match end return string end return p