Module:CheckIfUserNameIsIP
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg/50px-Test_Template_Info-Icon_-_Version_%282%29.svg.png)
Doel
Het testen of de opgegeven naam een IP-adres is.
Toepassing
Sjabloon:Aanhef, Sjabloon:Auteursrechten, Sjabloon:Auteursrechten2, Sjabloon:Auteursrechten3, Sjabloon:Auteursrechten4, Sjabloon:Cvn, Sjabloon:Eenedit, Sjabloon:Eenedit1, Sjabloon:Exafbeelding, Sjabloon:Gebruik bronnen, Sjabloon:Global lock, Sjabloon:Hernoemen, Sjabloon:Hola, Sjabloon:Infobalk waarschuwingssjablonen, Sjabloon:Link pruning, Sjabloon:Linksnoei, Sjabloon:Linksnoei2, Sjabloon:Lsv, Sjabloon:Mnn, Sjabloon:Mvn, Sjabloon:Niet zomaar weghalen, Sjabloon:Rrv, Sjabloon:Schreeuwen, Sjabloon:Titelwijzigen, Sjabloon:Translate, Sjabloon:Vnom, Sjabloon:Vvn, Sjabloon:Vvna, Sjabloon:Waarschuwing, Sjabloon:Welcome, Sjabloon:Wiuweg, Sjabloon:Wscopyvio, Sjabloon:Zandbak
--[=[Functies zijn niet "lokaal", andere modules kunnen deze module nodig hebben en deze direct aanroepen.Voor IPv4-adressen wordt "4" teruggegevenVoor IPv6-adressen wordt "6" teruggegevenAlles wat geen IPv4 of IPv6 is geeft een "0" terug.Voor oorspronkelijke code zie https://en.wikipedia.org/w/index.php?title=Module:IPAddress&oldid=542839577]=]function _isIpV6( s ) local dcolon, groups if type( s ) ~= "string" or s:len() == 0 or s:find( "[^:%x]" ) -- only colon and hex digits are legal chars or s:find( "^:[^:]" ) -- can begin or end with :: but not with single : or s:find( "[^:]:$" ) or s:find( ":::" ) then return false end s, dcolon = s:gsub( "::", ":" ) if dcolon > 1 then return false end -- at most one :: s = s:gsub( "^:?", ":" ) -- prepend : if needed, upper s, groups = s:gsub( ":%x%x?%x?%x?", "" ) -- remove valid groups, and count them return ( ( dcolon == 1 and groups < 8 ) or ( dcolon == 0 and groups == 8 ) ) and ( s:len() == 0 or ( dcolon == 1 and s == ":" ) ) -- might be one dangling : if original ended with ::end function _isIpV4( s ) local function legal( n ) return ( tonumber( n ) or 256 ) < 256 and not n:match("^0%d") end-- in lua 0 is true! if type( s ) ~= "string" then return false end local p1, p2, p3, p4 = s:match( "^(%d+)%.(%d+)%.(%d+)%.(%d+)$" ) return legal( p1 ) and legal( p2 ) and legal( p3 ) and legal( p4 )end function _testip( s ) return _isIpV4( s ) and "4" or _isIpV6( s ) and "6" or "0"end local p = {} function p.isIpV6(frame) return _isIpV6( frame.args[ 1 ] ) and "1" or "0" endfunction p.isIpV4(frame) return _isIpV4( frame.args[ 1 ] ) and "1" or "0" endfunction p.testip(frame) return _testip( frame.args[ 1 ] ) or "" end return p
🔥 Top keywords: HoofdpaginaSpeciaal:ZoekenRonald PlasterkRichard van ZwolLoiza LamersChatGPTJoost KleinExtreemrechtsPinksterenRode dieselGeert WildersNieuw-Caledonië (gebiedsdeel)Dilan YeşilgözSpecial:MyPage/zeusmodepreferences.jsLelylijnHenk VermeerRobert FicoElbert DijkgraafBaby ReindeerSpreidingswetBram van PolenCaroline van der PlasEuropese Parlementsverkiezingen 2024 in NederlandVinexKesbekeConstitutioneel hofBen van der BurgN-termEurovisiesongfestival 2024NederlandSpeciaal:RecenteWijzigingenLouisa JanssenIetsismeLangstudeerboeteMáxima ZorreguietaSlowakijeCleopatra VIIPatrick MoenaertBridgerton