Moduł:Sandbox/Draco flavus/TestFields9
Dokumentacja dla tego modułu może zostać utworzona pod nazwą Moduł:Sandbox/Draco flavus/TestFields9/opis
local p = {}
function p.FindFields2(frame)
-- Wywołanie: {{#invoke: Sandbox/Draco flavus/TestFields9 | FindFields2 | Ostatnia brygada | pattern1 | pattern2| pattern3 | … }}
-- Przeznaczenie znajduje na jakiejś stronie szablon {{:Dane tekstu}} kopiuje go, ale podmienia lub dodaje dodatkowe pola
-- tj. te wymienione w dalszych parametrach (pattern1, pattern2, pattern3 … )
-- Wynik: na nowo ewaluowany szablon {{Dane tekstu}}
-- pola szablonu źródłowego {{Dane tekstu}} nie muszą być w osobnej linii (tak zazwyczaj robimy dla przejrzystości, ale nie jest to wymóg techniczny)
-- Na przykład chcąc zrezygnować z okładki napiszemy | okładka = | strona z okładką =
-- chcąc dodać pole pochodzenie napiszemy | pochodzenie = tutaj skąd pochodzi
-- UWAGA by zapobiec ewaluacji szablonu podawanego jako jeden z argumentów np. inne = {{epub}} należy wstawić pipesign po parze nawiasów
-- a więc inne = {{|epub}}
local PageResult = ""
local i = 0
local j = 0
local k = ""
local v = ""
for k,v in pairs(frame.args) do
if k ~= 1
then
PageResult=PageResult .. k.." "..v:gsub("^%s+",""):gsub("|","🐉"):gsub("%[","🐖"):gsub("%]","🐙"):gsub("%{","🐟"):gsub("%}","🐠"):gsub("%<","🐪"):gsub("%>","🐨").." "
end
end
PageResult=PageResult:gsub("🐉","|"):gsub("🐖","%["):gsub("🐙","%]"):gsub("🐟","%{"):gsub("🐠","%}"):gsub("🐪","%<"):gsub("🐨","%>")
return PageResult
end
return p