博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用正则表达式匹配IP地址
阅读量:6588 次
发布时间:2019-06-24

本文共 541 字,大约阅读时间需要 1 分钟。

IP地址分为4段,以点号分隔。要对IP地址进行匹配,首先要对其进行分析,分成如下部分,分别进行匹配:
 

第一步:地址分析,正则初判 

  1. 1、0-9 \d 进行匹配
  2. 2、10-99 [1-9]\d 进行匹配
  3. 2、100-199 1\d\d 进行匹配
  4. 3、200-249 2[0-4]\d 进行匹配
  5. 4、250-255 25[0-5] 进行匹配

 

第二步:正则合并  

  1. 基本表达式可以合并为:       \d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]
  2. 前三部分正则表达式合并为:   ((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.){3}
  3. 前三部分加上最后一部分合并为:((\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])

 

第三步:进一步合并 

  1. 可以进一步合并为:((([1-9]?|1\d)\d|2([0-4]\d|5[0-5]))\.){3}(([1-9]?|1\d)\d|2([0-4]\d|5[0-5]))

 

第四:注意事项   

  1. 该正则表达式有两个缺陷:
  2. 0.0.0.0不能判断
  3. 255.255.255.255不能正确判断
  4. 这个问题需要使用其他代码进行辅助解决

转载地址:http://oyhno.baihongyu.com/

你可能感兴趣的文章
《Windows Server 2012 Hyper-V虚拟化管理实践》一3.3 远程管理Hyper-V主机
查看>>
《c++语言导学》——1.3 Hello,World!
查看>>
租用服务器怎么免去后顾之忧?
查看>>
阿里云服务器创建历史功能介绍 快速创建云服务器
查看>>
开源人工智能技术将改变一切
查看>>
送17届学弟学妹的礼物——学生包、学生优惠合集
查看>>
OpenBSD 现已支持 USB 3.0
查看>>
《CUDA C编程权威指南》——2.4节设备管理
查看>>
《Arduino开发实战指南:机器人卷》一2.2 模拟I/O口的操作函数
查看>>
红帽专家谈 Ceph 与 Gluster 开源存储路线
查看>>
2015 上半年 JavaScript 使用统计数据
查看>>
《PaaS程序设计》一1.2 云能为创新做什么
查看>>
《OpenGL ES 3.x游戏开发(上卷)》一2.4 文件I/O
查看>>
《写给程序员的数据挖掘实践指南》——5.2. 10折交叉验证的例子
查看>>
DevOps:软件架构师行动指南2.2 云的特性
查看>>
JVM性能优化, Part 5:Java的伸缩性
查看>>
《Python算法教程》——1.6 如果您感兴趣
查看>>
《正则表达式经典实例(第2版)》——2.18 向正则表达式中添加注释
查看>>
lolcat :一个在 Linux 终端中输出彩虹特效的命令行工具
查看>>
ROS机器人程序设计(原书第2版)3.9 3D可视化
查看>>