Cette fonction renvoie une couleur aléatoire au format hexadécimal. Paramètres
Nom | Type | but |
---|
variante | un magnifique | contrôle la plage de valeurs qui peuvent être renvoyées. |
Type de retour | But du retour |
---|
un magnifique | couleur aléatoire. |
Cette fonction renvoie la chaîne fournie avec des majuscules dispersées de manière aléatoire.Paramètres
Nom | Type | but |
---|
contribution | un magnifique | la chaîne à être randomisée. |
Type de retour | But du retour |
---|
un magnifique | la chaîne avec des majuscules aléatoires. |
local utils = require('Module:Utils') local random = math.random local floor = math.floor local fmod = math.fmod local sub = string.sub local char = string.char local inférieur = string.lower local supérieur = string.upper math.randomseed(mw.site.stats.edits + mw.site.stats.pages + os.time() + math.floor(os.clock() * 10^8)) local p = {} - -% Cette fonction renvoie une couleur aléatoire au format hexadécimal. --@ variant (string) contrôle la plage de valeurs qui peuvent être renvoyées --: color (string) fonction de couleur aléatoire p._random_color(variant) local ceil = variant et variant:match("%s*#?(%w %w%w%w%w%w);?%s*") ou nil local rgb = ceil et { random(tonumber(sub(ceil, 1, 2), 16)), random(tonumber(sub(ceil , 3, 4), 16)), random(tonumber(sub(ceil, 5, 6), 16)) } ou { random(255), random(255), random(255) } local hex = "" pour _, val dans ipairs(rgb) do local color = "" tandis que (val > 0) do local index = fmod(val, 16) + 1 val = floor(val / 16) color = string.sub('0123456789ABCDEF', index, index) .. color end if #color == 0 then color = "00" elseif #color == 1 then color = "0" .. color end hex = hex .. color end return hex end --% This la fonction renvoie la chaîne fournie avec des majuscules dispersées de manière aléatoire --@ input (string) la chaîne à randomiser --: output (string) la chaîne avec des majuscules aléatoires function p._random_caps(input) local ret = {} local LinkToken = 0 pour i = 1, #input do lettre locale = s ub(input, i, i) if LinkToken == 2 then -- Le jeton de début de lien complet a atteint LinkToken = letter == "|" et 0 ou 2 table.insert(ret, letter) elseif letter == "[" then -- Atteinte partie du jeton de début de lien LinkToken = LinkToken + 1 table.insert(ret, letter) else -- rAnDoMIzE CAPS LinkToken = 0 table .insert(ret, (random() > 0.5 et inférieur ou supérieur)(lettre)) end end return table.concat(ret) end -- Trucs bidons pour rendre les fonctions disponibles à la fois pour les modèles et les modules create_unpack_wrapper_function = function(name, func ) p[name] = utils.make_wrapper_function(function(args) local trim = utils.trim_positional_arguments(args) return func(#trim > 0 et trim[1] ou nil) end) end create_unpack_wrapper_function("random_color", p._random_color ) create_unpack_wrapper_function("random_caps", p._random_caps) renvoie p