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字典快速保存于读取的方法
Mar 23 Python
python获取中文字符串长度的方法
Nov 14 Python
对Python 两大环境管理神器 pyenv 和 virtualenv详解
Dec 31 Python
python自定义线程池控制线程数量的示例
Feb 22 Python
Python正则表达式匹配和提取IP地址
Jun 06 Python
Python中请不要再用re.compile了
Jun 30 Python
python把ipynb文件转换成pdf文件过程详解
Jul 09 Python
Django ORM多对多查询方法(自定义第三张表&amp;ManyToManyField)
Aug 09 Python
keras 指定程序在某块卡上训练实例
Jun 22 Python
opencv读取视频并保存图像的方法
Jun 04 Python
python之PySide2安装使用及QT Designer UI设计案例教程
Jul 26 Python
Python中的 Set 与 dict
Mar 13 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中在数据库中保存Checkbox数据(2)
2006/10/09 PHP
PHP 文件缓存的性能测试
2010/04/25 PHP
深入PHP购物车模块功能分析(函数讲解,附源码)
2013/06/25 PHP
PHP删除HTMl标签的三种解决方法
2013/06/30 PHP
PHP开发注意事项总结
2015/02/04 PHP
jQuery Tools tab使用介绍
2012/07/14 Javascript
javascript常用对话框小集
2013/09/13 Javascript
javascript:json数据的页面绑定示例代码
2014/01/26 Javascript
jQuery Ajax()方法使用指南
2014/11/19 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
JQuery CheckBox(复选框)操作方法汇总
2015/04/15 Javascript
node操作mysql数据库实例详解
2017/03/17 Javascript
Easyui在treegrid添加控件的实现方法
2017/06/23 Javascript
vue2.0模拟锚点的实例
2018/03/14 Javascript
关于微信小程序map组件z-index的层级问题分析
2019/07/09 Javascript
Vue实现计算器计算效果
2020/08/17 Javascript
vue中h5端打开app(判断是安卓还是苹果)
2021/02/26 Vue.js
[01:28:44]DOTA2-DPC中国联赛定级赛 RNG vs iG BO3第一场 1月10日
2021/03/11 DOTA
python获取文件后缀名及批量更新目录下文件后缀名的方法
2014/11/11 Python
python使用线程封装的一个简单定时器类实例
2015/05/16 Python
详解PyTorch批训练及优化器比较
2018/04/28 Python
想学python 这5本书籍你必看!
2018/12/11 Python
sklearn-SVC实现与类参数详解
2019/12/10 Python
Python随机数函数代码实例解析
2020/02/09 Python
基于css3实现漂亮便签样式
2013/03/18 HTML / CSS
德国健康生活方式网上商店:Landkaufhaus Mayer
2019/03/12 全球购物
市三好学生主要事迹
2014/01/28 职场文书
金融学专科生自我鉴定
2014/02/21 职场文书
学雷锋的心得体会
2014/09/04 职场文书
综治工作心得体会
2014/09/11 职场文书
小学感恩节活动策划方案
2014/10/06 职场文书
2015年销售部工作总结范文
2015/04/27 职场文书
刑事上诉状(量刑过重)
2015/05/23 职场文书
Python编写可视化界面的全过程(Python+PyCharm+PyQt)
2021/05/17 Python
MySQL控制流函数(-if ,elseif,else,case...when)
2022/07/07 MySQL
Python编写车票订购系统 Python实现快递收费系统
2022/08/14 Python