Descrição
Módulo usado para modificações no texto.
Uso
- semparenteses: remove os termos entre parênteses do texto
{{#invoke:texto|semparenteses|X Y (Z)}}
→ X Y{{#invoke:texto|semparenteses|texto sem parênteses}}
→ texto sem parênteses
- semlink: remove os colchetes, texto alternativo e parâmetros
{{#invoke:texto|semlink|[[:Categoria:São Paulo (cidade)|São Paulo]]}}
→
- Categoria:São Paulo (cidade)
{{#invoke:texto|semlink|[[Imagem:Wikinews-logo.svg|20px]]}}
→ Imagem:Wikinews-logo.svg
- link adiciona ligações
Ver também
Esta documentação se encontra na subpágina Módulo:Texto/doc ( | histórico)
Por favor inclua as categorias à subpágina /doc. Subpáginas deste módulo.
Por favor inclua as categorias à subpágina /doc. Subpáginas deste módulo.
m = {}
function m.semparenteses(params)
local str = mw.ustring.gsub(params.args[1], ' *%([^)]+%)', '')
return str
end
function m.semlink (params)
local str = mw.ustring.gsub(params.args[1], '%[%[([^%]|]+)|?[^%]]*%]%]', '%1')
return str
end
function m.link(params)
local input = params.args[1]
local separator = params.args[2] or ","
local items = mw.text.split(input, separator)
local filteredItems = {}
for _, item in ipairs(items) do
if item:match("^%s*(.-)%s*$") ~= "" then
table.insert(filteredItems, item)
end
end
local numItems = #filteredItems
if numItems == 1 then
return "[[" .. filteredItems[1] .. "]]"
end
local formattedStr = ""
for i = 1, numItems - 1 do
formattedStr = formattedStr .. "[[" .. filteredItems[i] .. "]], "
end
formattedStr = formattedStr .. "e [[" .. filteredItems[numItems] .. "]]"
return formattedStr
end
return m