js 正则表达式 验证 ip列表--详情:页面中一个输入框,可输入1个或多个IP,使用英文逗号隔开...

var isIp = ``function (){

var regexp = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;

return function (value){

var valid = regexp.test(value);

if (!valid){ //首先必须是 xxx.xxx.xxx.xxx 类型的数字,如果不是,返回false

return false ;

}

return value.split( '.' ).every( function (num){

//切割开来,每个都做对比,可以为0,可以小于等于255,但是不可以0开头的俩位数

//只要有一个不符合就返回false

if (num.length > 1 && num.charAt(0) === '0' ){

//大于1位的,开头都不可以是'0'

return false ;

} else if (parseInt(num , 10) > 255){

//大于255的不能通过

return false ;

}

return true ;

});

}

}();

var test_ip = '123.12.123.1' ; //一个普通的ip

alert(isIp(test_ip)); //返回true

var test_ips = '123.1.1.1,127.0.0.1,192.168.1.1' ; //多个IP,用逗号(,)隔开

var isTrue = test_ips.split( ',' ).every( function (ip){

return isIp(ip); //先将字符串按照逗号分成数组,在校验就可以了

});

alert(isTrue); //返回true,上面的ip全部正确

相关推荐
丁劲犇18 分钟前
CentOS 7.6 TCP连接奇慢故障排查:中文注释引发的sysctl配置异常
linux·tcp/ip·centos·速度慢
phltxy20 分钟前
Vue3入门指南:从环境搭建到数据响应式,开启高效前端开发之旅
前端·javascript·vue.js
小飞大王66621 分钟前
CSS基础知识
前端·css
Charlie_lll24 分钟前
学习Three.js–风车星系
前端·three.js
代码游侠24 分钟前
学习笔记——Linux内核与嵌入式开发1
linux·运维·前端·arm开发·单片机·嵌入式硬件·学习
玩电脑的辣条哥41 分钟前
幽灵回复AI已回复但前端不显示的排查与修复
前端·人工智能
石去皿1 小时前
轻量级 Web 应用 —— 把一堆图片按指定频率直接拼成视频,零特效、零依赖、零命令行
前端·音视频
星夜落月1 小时前
Web-Check部署全攻略:打造个人网站监控与分析中心
运维·前端·网络
摘星编程2 小时前
OpenHarmony + RN:ProgressBar进度条组件
javascript·react native·react.js
冰暮流星2 小时前
javascript之双重循环
开发语言·前端·javascript