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爬虫给孩子起个好名字
Feb 14 Python
简单了解Django模板的使用
Dec 20 Python
pip install urllib2不能安装的解决方法
Jun 12 Python
对numpy Array [: ,] 的取值方法详解
Jul 02 Python
Python多线程编程之多线程加锁操作示例
Sep 06 Python
解决Python selenium get页面很慢时的问题
Jan 30 Python
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
Feb 26 Python
pycharm 对代码做静态检查操作
Jun 09 Python
Python中logging日志记录到文件及自动分割的操作代码
Aug 05 Python
Python grpc超时机制代码示例
Sep 14 Python
python 绘制国旗的示例
Sep 27 Python
Python偏函数实现原理及应用
Nov 20 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自动识别文件编码并转换为UTF-8的方法
2014/06/12 PHP
PHP中__FILE__、dirname与basename用法实例分析
2014/12/01 PHP
php查看当前Session的ID实例
2015/03/16 PHP
php 使用fopen函数创建、打开文件详解及实例代码
2016/09/24 PHP
php 访问oracle 存储过程实例详解
2017/01/08 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
静态页面的值传递(三部曲)
2006/09/25 Javascript
JavaScript设置FieldSet展开与收缩
2009/05/15 Javascript
Javascript匿名函数的一种应用 代码封装
2010/06/27 Javascript
基于jQuery架构javascript基础体系
2011/01/01 Javascript
seajs1.3.0源码解析之module依赖有序加载
2012/11/07 Javascript
js 浏览本地文件夹系统示例代码
2013/10/24 Javascript
jquery实现submit提交表单
2015/02/03 Javascript
JavaScript代码生成PDF文件的方法
2016/02/26 Javascript
Avalon中文长字符截取、关键字符隐藏、自定义过滤器
2016/05/18 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
JavaScript 实现的checkbox经典实例分享
2016/10/16 Javascript
深入理解jQuery()方法的构建原理
2016/12/05 Javascript
jQuery插件HighCharts绘制2D饼图效果示例【附demo源码下载】
2017/03/21 jQuery
Angular2 之 路由与导航详细介绍
2017/05/26 Javascript
nodejs集成sqlite使用示例
2017/06/05 NodeJs
使用Karma做vue组件单元测试的实现
2020/01/16 Javascript
Python 字符串与数字输出方法
2018/07/16 Python
Python爬虫之网页图片抓取的方法
2018/07/16 Python
python sorted方法和列表使用解析
2019/11/18 Python
浅谈HTML5 &amp; CSS3的新交互特性
2016/07/19 HTML / CSS
日本最大的眼镜购物网站:Oh My Glasses
2016/11/13 全球购物
大学生军训自我评价分享
2013/11/09 职场文书
历史系自荐信范文
2013/12/24 职场文书
幼儿园教师工作制度
2014/01/22 职场文书
会计电算化应届生自荐信
2014/02/25 职场文书
秋季开学典礼主持词
2014/03/19 职场文书
迎新晚会主持词
2014/03/24 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
宝宝满月宴答谢词
2015/09/30 职场文书
2019年新郎保证书3篇
2019/10/17 职场文书