Difference between revisions of "Module:StringHelpers"

From Data JW United
Jump to navigation Jump to search
Line 8: Line 8:
 
return "complex question"
 
return "complex question"
 
else
 
else
if (tonumber(string.sub(param.args[1], string.len(param.args[1]))))
+
if (tonumber(string.sub(param.args[1], string.len(param.args[1]) - 1)))
 
then  
 
then  
return string.sub(param.args[1], string.len(param.args[1] - 1))
+
return string.sub(param.args[1], string.len(param.args[1] - 1))
 
end
 
end
 
end
 
end

Revision as of 16:39, 12 April 2020

Module supports numbers with max 3 digits.

Tests

Simple question

Expected Actual
150 Lua error at line 12: attempt to perform arithmetic on field '?' (a string value).
15 Lua error at line 12: attempt to perform arithmetic on field '?' (a string value).
7
150 0
15 5
7 7

Complex question

Expected Actual
6 complex question
7 complex question
10 complex question
99 complex question
101 complex question
6 complex question
7 complex question
10 complex question
99 complex question
101 complex question

local p = {}

function p.getParagraphFromQuestion(param)
	dashIndex = string.find(param.args[1], '-', 1, true);
	
	if (dashIndex ~= nil) 
		then
			return "complex question"
		else
			if (tonumber(string.sub(param.args[1], string.len(param.args[1]) - 1)))
				then 
					return string.sub(param.args[1], string.len(param.args[1] - 1))
			end
	end
end

return p