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操作json数据的一个简单例子
Apr 17 Python
Python中函数的参数传递与可变长参数介绍
Jun 30 Python
python函数局部变量用法实例分析
Aug 04 Python
Python的包管理器pip更换软件源的方法详解
Jun 20 Python
把csv文件转化为数组及数组的切片方法
Jul 04 Python
初探利用Python进行图文识别(OCR)
Feb 26 Python
python实现DEM数据的阴影生成的方法
Jul 23 Python
Python利用逻辑回归分类实现模板
Feb 15 Python
Python使用urllib模块对URL网址中的中文编码与解码实例详解
Feb 18 Python
Pytorch中的自动求梯度机制和Variable类实例
Feb 29 Python
Selenium之模拟登录铁路12306的示例代码
Jul 31 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
Feb 03 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在字符断点处截断文字的实现代码
2011/04/21 PHP
PHP 异步执行方法,模拟多线程的应用分析
2013/06/03 PHP
PHP对文件进行加锁、解锁实例
2015/01/23 PHP
PHP中关键字interface和implements详解
2017/06/14 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
PHP常见字符串操作函数与用法总结
2019/03/04 PHP
laravel 解决强制跳转 https的问题
2019/10/22 PHP
IE6不能修改NAME问题的解决方法
2010/09/03 Javascript
jquery实现不包含当前项的选择器实例
2015/06/25 Javascript
js实现下拉列表选中某个值的方法(3种方法)
2015/12/17 Javascript
JavaScript阻止回车提交表单的方法
2015/12/30 Javascript
JS文件上传神器bootstrap fileinput详解
2021/01/28 Javascript
Bootstrap源码解读按钮(5)
2016/12/23 Javascript
JS正则RegExp.test()使用注意事项(不具有重复性)
2016/12/28 Javascript
JS实现改变HTML上文字颜色和内容的方法
2016/12/30 Javascript
浅谈JS获取元素的N种方法及其动静态讨论
2017/08/25 Javascript
深入理解Vue 组件之间传值
2018/08/16 Javascript
js如何获取图片url的Blob值并预览示例代码
2019/03/07 Javascript
原生js生成图片验证码
2020/10/11 Javascript
python实现apahce网站日志分析示例
2014/04/02 Python
python实现随机调用一个浏览器打开网页
2018/04/21 Python
python 随机森林算法及其优化详解
2019/07/11 Python
Python如何对齐字符串
2020/07/30 Python
css3 利用transform打造走动的2D时钟
2020/10/20 HTML / CSS
字中字效果的实现【html5实例】
2016/05/03 HTML / CSS
Spanx塑身衣官网:美国知名内衣品牌
2017/01/11 全球购物
Boutique 1美国:阿联酋奢侈时尚零售商
2017/10/16 全球购物
"引用"与多态的关系
2013/02/01 面试题
英语自荐信常用语句
2013/12/13 职场文书
质检部部长职责
2013/12/16 职场文书
销售经理工作职责
2014/02/03 职场文书
房产委托公证书样本
2014/04/04 职场文书
公益广告标语
2014/06/19 职场文书
农林经济管理专业自荐信
2014/09/01 职场文书
怎么写工作检讨书
2014/11/16 职场文书
小学二年级语文教学反思
2016/03/03 职场文书