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 列表排序方法reverse、sort、sorted详解
Jan 22 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
Sep 15 Python
Python实现的多项式拟合功能示例【基于matplotlib】
May 15 Python
python实现名片管理系统
Nov 29 Python
Python Numpy库安装与基本操作示例
Jan 08 Python
python安装virtualenv虚拟环境步骤图文详解
Sep 18 Python
Python zip函数打包元素实例解析
Dec 11 Python
使用pygame编写Flappy bird小游戏
Mar 14 Python
基于Python实现2种反转链表方法代码实例
Jul 06 Python
django rest framework 过滤时间操作
Jul 12 Python
python 闭包函数详细介绍
Apr 19 Python
python中mongodb包操作数据库
Apr 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实现xml与json之间的相互转换功能实例
2016/07/07 PHP
封装好的省市地区联动控件附下载
2007/08/13 Javascript
javascript一点特殊用法
2008/05/28 Javascript
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
JavaScript中的作用域链和闭包
2012/06/30 Javascript
动态获取复选框checkbox选中个数的jquery代码
2013/06/25 Javascript
jquery二级导航内容均分的原理及实现
2013/08/13 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
JavaScript类型系统之正则表达式
2016/01/05 Javascript
js 连续赋值的简单实现
2016/06/13 Javascript
关于javascript的一些知识以及循环详解
2016/09/12 Javascript
AngularJS 与百度地图的结合实例
2016/10/20 Javascript
AngularJS中一般函数参数传递用法分析
2016/11/22 Javascript
从零学习node.js之express入门(六)
2017/02/25 Javascript
Bootstrap显示与隐藏简单实现代码
2017/03/06 Javascript
常用的几个JQuery代码片段
2017/03/13 Javascript
JS中原始值和引用值的储存方式示例详解
2018/03/23 Javascript
jQuery实现模拟搜索引擎的智能提示功能简单示例
2019/01/27 jQuery
layui实现数据分页功能(ajax异步)
2019/07/27 Javascript
优雅的使用javascript递归画一棵结构树示例代码
2019/09/22 Javascript
Vue是怎么渲染template内的标签内容的
2020/06/05 Javascript
python发送邮件示例(支持中文邮件标题)
2014/02/16 Python
给Python IDLE加上自动补全和历史功能
2014/11/30 Python
Python列出一个文件夹及其子目录的所有文件
2016/06/30 Python
Python读取和处理文件后缀为.sqlite的数据文件(实例讲解)
2017/06/27 Python
Python模块的加载讲解
2019/01/15 Python
python Plotly绘图工具的简单使用
2020/03/03 Python
Python生成器next方法和send方法区别详解
2020/05/30 Python
Django Form常用功能及代码示例
2020/10/13 Python
html5-websocket基于远程方法调用的数据交互实现
2012/12/04 HTML / CSS
制冷与电控专业应届生求职信
2013/11/11 职场文书
经典洗发水广告词
2014/03/13 职场文书
七一讲话心得体会
2014/09/05 职场文书
大学生村官个人总结
2015/02/15 职场文书
2015年设计师个人工作总结
2015/04/25 职场文书
2016年校园社会综合治理宣传月活动总结
2016/03/16 职场文书