Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проверка IP адреса. Просьба протестировать у себя код. (https://javascript.ru/forum/misc/39240-proverka-ip-adresa-prosba-protestirovat-u-sebya-kod.html)

sexyQuery 24.06.2013 21:02

uncompressIPv6('2001:db8::ff00:42:8329')
"2001:0db8:0000:0000:0000:ff00:0042:8329"
uncompressIPv6('2001:db8::ff00:42:8329') == '2001:0db8:0000:0000:0000:ff00:0042:8329' // с википедии пример
true
uncompressIPv6('::A:B:127.0.0.1')
"0000:0000:0000:0000:0000:000a:000b:127.0.0.1"

sexyQuery 24.06.2013 21:02

function uncompressIPv6(str) {
    if (isIPv6(str)) {
        str = str.toLowerCase();
        str = str.replace('::', '*');        
        var n = substrCount(str, ':');
        str = str.replace('*', new Array(8 - n).join(':'));
        var parts = str.split(':'), length = parts.length, i = 0;
        while (i < length) {
            parts[i] = strPad(parts[i++], 4, '0', 'left');
        }
        return parts.join(':');
    }
    return null;
}


Часовой пояс GMT +3, время: 17:36.