james0r
1/15/2018 - 2:33 AM

isValidIP.js

function isValidIP(str) {
    var hasSpecialChars = /[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/.test(str);
    var octets = 0;
    var octetArr = [];

    if (hasSpecialChars) {
        console.log("Invalid IP entered: Input contains special characters.");
        return false;
    }

    for(i = 0; i < 4; i++) {
        if (i == 3){
            octetArr.push(str);
        } else {
            var charIndex = str.indexOf('.');
            octetArr.push(str.substring(0, charIndex));
            str = str.substring(charIndex + 1, str.length);
        }

    }

    console.log(octetArr);

    for(ii = 0; ii < 4; ii++) {
        if (octetArr[ii] >= 0 && octetArr[ii] < 256) {
            continue;
        } else {
            console.log("Invalid IP entered: At least 1 octet was found to be out of range.");
            return false;
        }
    }

    return true;

}

console.log(isValidIP("255.255.255.255"));