您的位置:首页 > 编程语言 > Java开发

JAVA后端的多IP地址验证正则表达式

2018-03-06 10:14 253 查看
      最近在开发项目时遇到了需要验证多个IP地址的情况,于是想用正则表达式来解决问题,在网上搜了很多,大部分都是单个IP地址的正则验证,或者是有多个IP地址验证,但并不严谨,于是我结合了一下,并通过不停的测试,最后得到了以下这个算是比较严谨,并可以验证多个IP的正则表达式了:
(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])){3}(\\s*,\\s*(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])){3})*
解释一下:
(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])就是单独的三位以内数字,范围限定在0-255
(\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])){3}就是“.”+三位以内数字,后面的{3}为重复三次,加上上面的组成了一个完整的IP地址,这一部分可以用做验证单个IP
(\\s*,\\s*(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])){3})* 这部分完全Copy了上一部分,区别在于\\s*,\\s* 用作验证“,”分隔,\\s*是允许逗号前后有空格存在,最后部分的*号表示可以重复,也就可以进行多IP验证了。

       测试方法相信大家都会写




        相信大家自己试一下就知道了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  IP 正则表达式