Semantic MediaWikiDit bericht verdwijnt nadat alle relevante taken zijn afgerond.

Er is één onvoltooide of openstaande taak, die nodig is om het installeren 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
 
(Een tussenliggende versie door dezelfde gebruiker niet weergegeven)
Regel 22: Regel 22:
function p.mainnull(frame)
function p.mainnull(frame)
local theString = mw.text.unstrip(frame.args[1])
local theString = mw.text.unstrip(frame.args[1])
local fallback = mw.text.unstrip(frame.args[2])
local fallback = frame.args[2]
local onlyNumber
local onlyNumber
onlyNumber = (string.match(theString, "%-?[%d%.]+"))
onlyNumber = (string.match(theString, "%-?[%d%.]+"))
checkedNumber = tonumber(onlyNumber)
checkedNumber = tonumber(onlyNumber)
if checkedNumber == nil then
if checkedNumber == nil then
return fallback
if fallback == nil then
return nil
else
return mw.text.unstrip(fallback)
end
else
else
return checkedNumber
return checkedNumber

Huidige versie van 25 jan 2023 19:43

Module:StripToNumbers

Summary
Example: fetch first number:

"sdfsdf 23.56 sdfsdf 33" (using main) => 23.56

"text without number" (using mainnull, with fallback text) => No number found



local p = {}

function p.main(frame)
	local theString = mw.text.unstrip(frame.args[1])
	local onlyNumber
	onlyNumber = (string.match(theString, "%-?[%d%.]+"))
	checkedNumber = tonumber(onlyNumber)
	if checkedNumber == nil then
		error(" Input did not contain valid numeric data")
	else
		return checkedNumber
	end
end

function p.halve(frame)
	local checkedNumber = (p.main(frame))
	local halvedNumber
	halvedNumber = (checkedNumber / 2)
	return halvedNumber
end

function p.mainnull(frame)
	local theString = mw.text.unstrip(frame.args[1])
	local fallback = frame.args[2]
	local onlyNumber
	onlyNumber = (string.match(theString, "%-?[%d%.]+"))
	checkedNumber = tonumber(onlyNumber)
	if checkedNumber == nil then
		if fallback == nil then
			return nil
		else
			return mw.text.unstrip(fallback)
		end
	else
		return checkedNumber
	end
end

return p