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全部正确

相关推荐
泯泷3 小时前
那段文字是谁删的?Yjs 14 正式版之前,一套删除归属方案的实现与边界
前端·javascript·算法
hold?fish:palm3 小时前
34 合并K个升序链表
javascript·算法·链表
野槐5 小时前
前端项目优化(有了我,会发生...)
前端
幸运小圣6 小时前
PointerEvent 常用属性与事件整理【JavaScript】
开发语言·javascript·ecmascript
aa小小6 小时前
【无标题】
前端
计算机魔术师7 小时前
还在单线程跟 AI 聊天?Claude Code 并行多会话让你一个人干三个人的活
前端
志尊宝7 小时前
Vue3 零基础每日笔记(038):亲手封装 useDebounceFn 与 useThrottleFn——高频事件的流量阀
前端·javascript·vue·html·vue3
JavaGuide7 小时前
对标 MinIO!全新一代分布式文件系统正式发布
前端·后端
风骏时光牛马7 小时前
AI驱动自动化业务工作流搭建实践
前端
码云之上8 小时前
Skill 里的脚本终于能跑了,星悟接 CubeSandbox 的纪实
前端·人工智能·前端框架