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.

Geen bewerkingssamenvatting
Geen bewerkingssamenvatting
Regel 27: Regel 27:


function p.main( frame )
function p.main( frame )
if str == nil then  
if frame.args[1] == nil then  
return ""
return ""
end
end

Versie van 10 aug 2023 13:25

Module:Pad numbers

Summary
Pad numbers in string. Luafout op regel 12: attempt to perform arithmetic on local 'len' (a nil value)



--[[
Method for replacing numerical sequences in string with zero-padded equivalents
]]--

local p = {}

p.padleft = function( str, len, char )
	if char == nil
		then char = '0'
		end
	char = '0'
	res = string.rep( char, len - #str ) .. str
	return res
end

--[[
Not currently used
]]--
p.padright = function( str, len, char )
	if char == nil
		then char = '0'
		end
	char = '0'
	res = str .. string.rep( char, len - #str )
	return res
end

function p.main( frame )
	if frame.args[1] == nil then 
		return ""
	end
	local str = mw.text.unstrip( frame.args[1] )
	if frame.args[2] == nil then
		local padlength = 5
	else
		local padlength = mw.text.unstrip( frame.args[2] )
	end
	
	local res = string.gsub(
		str, 
		"(%d+)", 
		function(d) return p.padleft( d, padlength, '0' ) end
	)
	return res
end

return p