мНет описания правки
мНет описания правки
 
(не показано 17 промежуточных версий этого же участника)
Строка 1: Строка 1:
local function cleanString(input_string)
    local cleaned_string = string.gsub(input_string, "%D", "")
    return tonumber(cleaned_string)
end
local p = {}
local p = {}


function p.main(frame)
function p.main(frame)
    local input_string = frame.args[1]
--    local input_string = "f123вап"
      local input_string = frame.args[1] or ""
    local input_string1 = tostring(input_string)
--      local cleaned_string = mw.ustring.gsub(input_string, "%D", "")
local str = string.gsub(input_string1, "%D", "")
      local result_number = cleanString(input_string)
local result_number = tonumber(string.match(input_string1, "%d+"))
--    local input_string = "0"..frame.args[1].." "
--    local input_string1 = tostring(input_string)
--   local str = string.gsub(input_string1, "%D", "")
--   local result_number = tonumber(string.match(str, "%d+"))
--    local result_number = tonumber(str)
--    local result_number = tonumber(str)


Строка 14: Строка 23:
--        return result_number
--        return result_number
--    end
--    end
   return result_number, " - " , str, " - ", input_string1
   return result_number
end
end
return p
return p

Текущая версия от 12:38, 29 сентября 2023

Преобразование строкового числа в числовое значение

Вызов функции

{{#invoke:StringToNum|main|123}}


local function cleanString(input_string)
    local cleaned_string = string.gsub(input_string, "%D", "")
    return tonumber(cleaned_string)
end

local p = {}


function p.main(frame)
	
       local input_string = frame.args[1] or ""
--       local cleaned_string = mw.ustring.gsub(input_string, "%D", "")
       local result_number = cleanString(input_string)	
--    local input_string = "0"..frame.args[1].." "
--    local input_string1 = tostring(input_string)
--	  local str = string.gsub(input_string1, "%D", "")
--	  local result_number = tonumber(string.match(str, "%d+"))
--    local result_number = tonumber(str)

--    if result_number == nil then
--         return "Ошибка: входная строка не может быть преобразована в число"
--     else
--         return result_number
--     end
   return result_number
end
return p