İçeriğe atla

Kullanıcı:HastaLaVi2/Çalışma2

Vikipedi, özgür ansiklopedi

local function tabloSayi(T) local say = 0 for _ in pairs(T) do say = say + 1 end return say end

local function aynisiVarMi(T, G) local durum = true

for _,u in pairs(T) do if u == "Modül:"..G then durum = nil end end

return durum end

local function lua(sayfa) local tablo = {} local modul = {} local moduller, baslik, i

local function loop(icerik, tablo, pat1, pat2, pat3) if mw.ustring.find(icerik, pat1) then local say = mw.ustring.find(icerik, pat1) icerik = mw.ustring.sub(icerik, say+pat3, -1) local yeni = mw.ustring.gsub(icerik, pat2, "") if mw.ustring.len(yeni) < 50 and aynisiVarMi(tablo, yeni) then table.insert(tablo, "Modül:" .. yeni) end tablo = loop(icerik, tablo, pat1, pat2, pat3) end return tablo end

local function loopTemp(sayfa, modul) return loop(sayfa:getContent(), modul, "invoke", "|.*", 7) end local function loopMod(sayfa, modul) return loop(sayfa:getContent(), modul, 'require%(%"Modül:', '%"%).*', 15) end local function loopMod2(sayfa, modul) return loop(sayfa:getContent(), modul, 'mw%.loadData%(%"Modül:', '%"%).*', 19) end

if sayfa.nsText == "Şablon" and mw.ustring.find(sayfa:getContent(), "invoke") then moduller = loopTemp(sayfa, modul) baslik = "şablon" i = tabloSayi(moduller) end

if sayfa.nsText == "Modül" and (mw.ustring.find(sayfa:getContent(), 'require%(%"Modül:') or mw.ustring.find(sayfa:getContent(), 'mw%.loadData%(%"Modül:')) then moduller = loopMod(sayfa, modul) local moduller2 = loopMod2(sayfa, modul) baslik = "modül" i = tabloSayi(moduller) end

if modul[1] then

table.insert(tablo, '

' ..'' ..'

")

end

return table.concat(tablo) end