×
Create a new article
Write your page title here:
We currently have 1,721 articles on The Quelmar Wiki. Type your article name above or click on one of the titles below and start writing!



The Quelmar Wiki
Revision as of 18:39, 24 January 2024 by Spiderjjr45 (talk | contribs)

Documentation for this module may be created at Module:Wordcount/doc

-- Module:WordCount
local p = {}

function p.count(frame)
    -- Get the content of the current article
    local content = mw.title.getCurrentTitle():getContent()

    -- Check if content is not nil
    if content == nil then
        return "Article content not available"
    end

    -- Remove comments and some special formatting
    content = content:gsub("%[%[File:.-|%[%[Image:.-|%[%[Media:.-", "") -- Remove file, image, media
    content = content:gsub("%[%[.-|", "") -- Remove wiki links label
    content = content:gsub("%[%[", ""):gsub("%]%]", "") -- Remove wiki link brackets
    content = content:gsub("{{.-}}", "") -- Remove template calls
    content = content:gsub("======", "") -- Remove level 6 headers
    content = content:gsub("=====", "") -- Remove level 5 headers
    content = content:gsub("====", "") -- Remove level 4 headers
    content = content:gsub("===", "") -- Remove level 3 headers
    content = content:gsub("==", "") -- Remove level 2 headers
    content = content:gsub("=", "") -- Remove level 1 headers headers

    -- Replace HTML entities
    content = mw.text.unstrip(content)
    content = mw.text.decode(content)

    -- Count the words
    local _, wordCount = string.gsub(content, "%S+", "")

    -- Return the word count
    return tostring(wordCount) .. " words"
end

return p
Cookies help us deliver our services. By using our services, you agree to our use of cookies. (Hi Margarita's Table. 🇩🇪)
Cookies help us deliver our services. By using our services, you agree to our use of cookies. (Hi Margarita's Table. 🇩🇪)