Задача скрипта позволять вводить адреса в такой форме:
для IPv4 - 1-255.0-255.0-255.1-255
для IPv6 - 1-255.0-255.0-255.0-255.0-255.1-255
var ip = prompt('Проверка корректности записи IP адресов.\nВведите IP адрес:');
var reg = /^(2[0-5][0-5]|1\d\d|[1-9](?=\d)\d|[1-9])((\.(2[0-5][0-5]|1\d\d|[1-9](?=\d)\d|\d)){2}|(\.(2[0-5][0-5]|1\d\d|[1-9](?=\d)\d|\d)){4})\.(2[0-5][0-5]|1\d\d|[1-9](?=\d)\d|[1-9])$/;
var result, resultLength;
if (result = ip.match(reg)){
resultLength = result[0].split('.').length;
alert('Это правильный IPv'+ resultLength +' адрес:\n'+ result[0]);
} else {
alert('Введенный вами адрес - ['+ ip +'] не корректен!');
}
Прошу протестировать и выразить свои мысли по поводу решения задачи. Большое спасибо заранее!