Zum Inhalt springen

Modul:ExtractHeadings

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 12. Juli 2024 um 00:10 Uhr durch Matthias M. (Diskussion | Beiträge) (Entferne Syntax um defekte Links zu vermeiden.). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Die Dokumentation für dieses Modul kann unter Modul:ExtractHeadings/Doku erstellt werden

local p = {}
local getArgs = require('Module:Arguments').getArgs
local mwTitle = mw.title
local Text = require('Module:Text')

function p.extractHeadings(frame)
    local args = getArgs(frame)
    local title = args[1]
    local page = mwTitle.new(title)
    local content = page:getContent()
    
    local headings = {}
    for heading in content:gmatch('==+%s*([^=]+)%s*==+') do
        heading = Text.getPlain(heading)
        local link = title .. '#' .. mw.uri.anchorEncode(heading)
        table.insert(headings, '* [[' .. link .. '|' .. heading .. ']]')
    end
    
    return table.concat(headings, '\n')
end

return p