Python正则表达式匹配和提取IP地址


Posted in Python onJune 06, 2019

Linux

No.1 IPv4

下面是IPv4的IP正则匹配实例:

简单的匹配给定的字符串是否是ip地址

import re
if re.match(r"^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$", "236.168.192.1"):
  print "IP vaild"
 else:
  print "IP invaild"

精确的匹配给定的字符串是否是IP地址

import re
if re.match(r"^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", "236.168.192.1"):
  print "IP vaild"
 else:
  print "IP invaild"

简单从长文本中提取IP

import re
string_ip = "is this 236.168.192.1 ip 12321"
result = re.findall(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", string_ip)
if result:
  print result
else:
  print "re cannot find ip"

精准提取IP

import re
string_ip = "is this 236.168.192.1 ip 12321"
result = re.findall(r"\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b", string_ip)
if result:
  print result
else:
  print "re cannot find ipNo.2 IPv6
string_IPv6="1050:0:0:0:5:600:300c:326b"
#匹配是否满足IPv6格式要求,请注意例子里大小写不敏感
if re.match(r"^(?:[A-F0-9]{1,4}:){7}[A-F0-9]{1,4}$", string_IPv6, re.I):
  print "IPv6 vaild"
else:
  print "IPv6 invaild"
#提取IPv6,例子里大小写不敏感
result = re.findall(r"(?<![:.\w])(?:[A-F0-9]{1,4}:){7}[A-F0-9]{1,4}(?![:.\w])", string_IPv6, re.I)
#打印提取结果
print result

总结

以上所述是小编给大家介绍的Python正则表达式匹配和提取IP地址,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
八大排序算法的Python实现
Jan 28 Python
快速入手Python字符编码
Aug 03 Python
Django 如何获取前端发送的头文件详解(推荐)
Aug 15 Python
python TCP Socket的粘包和分包的处理详解
Feb 09 Python
windows下安装Python的XlsxWriter模块方法
May 03 Python
Python实现模拟登录网易邮箱的方法示例
Jul 05 Python
pycham查看程序执行的时间方法
Nov 29 Python
Python中dict和set的用法讲解
Mar 28 Python
tensorflow实现打印ckpt模型保存下的变量名称及变量值
Jan 04 Python
python编写实现抽奖器
Sep 10 Python
详解Pytorch显存动态分配规律探索
Nov 17 Python
python爬虫beautifulsoup库使用操作教程全解(python爬虫基础入门)
Feb 19 Python
Python 常用模块 re 使用方法详解
Jun 06 #Python
Python比较配置文件的方法实例详解
Jun 06 #Python
Django中使用 Closure Table 储存无限分级数据
Jun 06 #Python
创建Django项目图文实例详解
Jun 06 #Python
Django网络框架之HelloDjango项目创建教程
Jun 06 #Python
python操作小程序云数据库实现简单的增删改查功能
Jun 06 #Python
Django网络框架之创建虚拟开发环境操作示例
Jun 06 #Python
You might like
php中0,null,empty,空,false,字符串关系的详细介绍
2013/06/20 PHP
微信随机生成红包金额算法php版
2016/07/21 PHP
php简单处理XML数据的方法示例
2017/05/19 PHP
php新建文件的方法实例
2019/09/26 PHP
PHP Pipeline 实现中间件的示例代码
2020/04/26 PHP
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
使用JSLint提高JS代码质量方法分享
2013/12/16 Javascript
js中settimeout方法加参数
2014/02/28 Javascript
chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
2015/10/09 Javascript
JavaScript严格模式详解
2015/11/18 Javascript
jquery利用拖拽方式在图片上添加热链接
2015/11/24 Javascript
javascript类型系统_正则表达式RegExp类型详解
2016/06/24 Javascript
React中使用collections时key的重要性详解
2017/08/07 Javascript
vue实现tab切换外加样式切换方法
2018/03/16 Javascript
Node.js使用cookie保持登录的方法
2018/05/11 Javascript
Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控
2019/05/13 Javascript
Javascript通过控制类名更改样式
2019/05/24 Javascript
vue分页器组件编写方法详解
2019/06/28 Javascript
layui 中select下拉change事件失效的解决方法
2019/09/20 Javascript
Python中的异常处理学习笔记
2015/01/28 Python
python单元测试unittest实例详解
2015/05/11 Python
python用pickle模块实现“增删改查”的简易功能
2017/06/07 Python
python3获取当前文件的上一级目录实例
2018/04/26 Python
Python 使用PIL中的resize进行缩放的实例讲解
2018/08/03 Python
Python实现的栈、队列、文件目录遍历操作示例
2019/05/06 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
2019/10/30 Python
Django对接支付宝实现支付宝充值金币功能示例
2019/12/17 Python
Banana Republic英国官网:香蕉共和国,GAP集团旗下偏贵族风
2018/04/24 全球购物
求∏的近似值,直到最后一项的绝对值小于指定的数
2016/02/12 面试题
毕业生找工作的自我评价
2013/10/18 职场文书
校运会广播稿100字
2014/01/27 职场文书
促销活动计划书
2014/05/02 职场文书
教师节倡议书2015
2015/04/27 职场文书
环境卫生标语
2015/08/03 职场文书
《莫泊桑拜师》教学反思
2016/02/22 职场文书
CSS子盒子水平和垂直居中的五种方法
2022/07/23 HTML / CSS