Semantic MediaWikiDit bericht verdwijnt nadat alle relevante taken zijn afgerond.

Er is één onvoltooide of openstaande taak, die nodig is om het bijwerken van Semantic MediaWiki te voltooien. Een beheerder of gebruiker met voldoende rechten kan deze uitvoeren. Dit moet worden gedaan voordat nieuwe gegevens worden toegevoegd om tegenstrijdigheden te voorkomen.

Nieuwe pagina aangemaakt met 'local p = {} p.convertNumberToOrdinal = function( num ) local num = string.trim( num ) if num == "1" then return "1ste" end if num == "8" then return "8ste" end -- do 2-9 first local lastDigit = string.sub( num, -1) local numeralsWithDeSuffix1 = { "2", "3", "4", "5", "6", "7", "9" } for _,v in ipair( hasDeSuffix1 ) do if lastDigit == v then return num .. "de" end end local lastTwoDigits = string.sub( num, -2) local hasDeSuffix2 = { "10", "1…'
 
Geen bewerkingssamenvatting
 
(6 tussenliggende versies door dezelfde gebruiker niet weergegeven)
Regel 1: Regel 1:
local p = {}
local p = {}


p.convertNumberToOrdinal = function( num )
p.convertNumberToOrdinal = function( frame )
local num = string.trim( num )
local num = frame.args.num or nil
if num == nil then return "" end
 
num = mw.text.trim( num )
if num == "1" then return "1ste" end
if num == "1" then return "1ste" end
if num == "8" then return "8ste" end
if num == "8" then return "8ste" end
Regel 9: Regel 12:
local lastDigit = string.sub( num, -1)
local lastDigit = string.sub( num, -1)
local numeralsWithDeSuffix1 = { "2", "3", "4", "5", "6", "7", "9" }
local numeralsWithDeSuffix1 = { "2", "3", "4", "5", "6", "7", "9" }
for _,v in ipair( hasDeSuffix1 ) do
for _,v in ipairs( numeralsWithDeSuffix1 ) do
if lastDigit == v then
if num == v then
return num .. "de"
return num .. "de"
end
end
Regel 16: Regel 19:


local lastTwoDigits = string.sub( num, -2)
local lastTwoDigits = string.sub( num, -2)
local hasDeSuffix2 = { "10", "11", "12", "13", "14", "15", "16", "17", "18", "19" }
local numeralsWithDeSuffix2 = { "10", "11", "12", "13", "14", "15", "16", "17", "18", "19" }
for _,v in ipair( hasDeSuffix2 ) do
for _,v in ipairs( numeralsWithDeSuffix2 ) do
if lastTwoDigits == v then
if lastTwoDigits == v then
return num .. "de"
return num .. "de"

Huidige versie van 19 sep 2025 10:04

Module:Ordinals




{{#invoke:Ordinals|convertNumberToOrdinal |num=2 }}

2de

3de

8ste

10de

11de

8345ste


local p = {}

p.convertNumberToOrdinal = function( frame )
	local num = frame.args.num or nil
	if num == nil then return "" end

	num = mw.text.trim( num )
	if num == "1" then return "1ste" end
	if num == "8" then return "8ste" end

	-- do 2-9 first
	local lastDigit = string.sub( num, -1)
	local numeralsWithDeSuffix1 = { "2", "3", "4", "5", "6", "7", "9" }
	for _,v in ipairs( numeralsWithDeSuffix1 ) do
		if num == v then
			return num .. "de"
		end
	end

	local lastTwoDigits = string.sub( num, -2)
	local numeralsWithDeSuffix2 = { "10", "11", "12", "13", "14", "15", "16", "17", "18", "19" }
	
	for _,v in ipairs( numeralsWithDeSuffix2 ) do
		if lastTwoDigits == v then
			return num .. "de"
		end
	end
	
	-- else
	return num .. "ste"

	-- 1ste, 11de, 21ste, 31ste, 101ste
	-- 8ste, 18de, 28ste

	-- similar 
	-- 2de, 12de, 22ste, 32ste, etc.
	-- 3rde, 13rde, 23ste, 33ste, ...
	-- 4de, 14de, 24ste, ...
	-- 5de, 15de, 25ste, ...
	-- 6de, 16de, 26ste, ...
	-- 7de, 17de, 27ste, ...
	-- 9de, 19de, 29ste
	-- 10de, 20ste, 21ste
end

return p