반응형
function isValidIP(ip) {
// IPv4 정규식
const ipv4Pattern = /^((25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])$/;
// IPv6 정규식
const ipv6Pattern = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|(([0-9a-fA-F]{1,4}:){1,7}:|:|::([0-9a-fA-F]{1,4}:){1,6}))$/;
// IPv4 체크
if (ipv4Pattern.test(ip)) {
return "IPv4";
}
// IPv6 체크
if (ipv6Pattern.test(ip)) {
return "IPv6";
}
// 형식이 맞지 않으면 false 반환
return false;
}
// 테스트
console.log(isValidIP("192.168.0.1")); // IPv4
console.log(isValidIP("255.255.255.255")); // IPv4
console.log(isValidIP("1200:0000:AB00:1234:0000:2552:7777:1313")); // IPv6
console.log(isValidIP("::1")); // IPv6
console.log(isValidIP("invalid_ip")); // false
반응형
'Develope > CodeLab' 카테고리의 다른 글
[Javascript]특정 시간 이후 코드를 실행하기 위해 Sleep 시키기 (0) | 2021.02.08 |
---|---|
[Javascript]파일 용량 byte 단위 계산 (0) | 2020.06.30 |
[Javascript]Emoji(이모티콘) 제거하기 (0) | 2020.06.24 |
[Javascript]맥어드레스(MacAddress) 형식 유효성 체크 (0) | 2020.06.16 |