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线程锁(thread)学习示例
Dec 04 Python
Python实现的数据结构与算法之队列详解
Apr 22 Python
Python的pycurl包用法简介
Nov 13 Python
qpython3 读取安卓lastpass Cookies
Jun 19 Python
python tkinter canvas 显示图片的示例
Jun 13 Python
python同时替换多个字符串方法示例
Sep 17 Python
利用Python产生加密表和解密表的实现方法
Oct 15 Python
Python读取csv文件实例解析
Dec 30 Python
Python无头爬虫下载文件的实现
Apr 02 Python
python交互模式基础知识点学习
Jun 18 Python
Python logging模块原理解析及应用
Aug 13 Python
Python中读取文件名中的数字的实例详解
Dec 25 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&amp;MYSQL留言板源码
2020/07/19 PHP
如何突破PHP程序员的技术瓶颈分析
2011/07/17 PHP
php代码书写习惯优化小结
2013/06/20 PHP
php用户注册页面利用js进行表单验证具体实例
2013/10/17 PHP
解密ThinkPHP3.1.2版本之模块和操作映射
2014/06/19 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
php使用正则验证中文
2016/04/06 PHP
PHP基于GD2函数库实现验证码功能示例
2019/01/27 PHP
图片无缝滚动代码(向左/向下/向上)
2013/04/10 Javascript
JS 如何获取radio选中后的值及不选择取radio的值
2013/10/28 Javascript
JS图片切换的具体方法(带缩略图版)
2013/11/12 Javascript
VS2008中使用JavaScript调用WebServices
2014/12/18 Javascript
jQuery实现验证年龄简单思路
2016/02/24 Javascript
微信小程序 icon组件详细及实例代码
2016/10/25 Javascript
Angularjs 动态改变title标题(兼容ios)
2016/12/29 Javascript
JavaScript代码实现txt文件的上传预览功能
2018/03/27 Javascript
ng-events类似ionic中Events的angular全局事件
2018/09/05 Javascript
微信小程序实现留言板
2018/10/31 Javascript
javascript 函数的暂停和恢复实例详解
2020/04/25 Javascript
[01:14:34]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第一局
2016/02/28 DOTA
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
2017/07/24 Python
解决Django生产环境无法加载静态文件问题的解决
2019/04/23 Python
python实现人工智能Ai抠图功能
2019/09/05 Python
python实现在线翻译功能
2020/03/03 Python
python不同系统中打开方法
2020/06/23 Python
Python如何对XML 解析
2020/06/28 Python
html5构建触屏网站之touch事件介绍
2013/01/07 HTML / CSS
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
资产评估专业学生的自我鉴定
2013/11/14 职场文书
电子商务专业推荐信范文
2013/12/02 职场文书
个人查摆剖析材料
2014/02/04 职场文书
创先争优一句话承诺
2014/05/29 职场文书
求职教师自荐书
2014/06/19 职场文书
2016自主招生校长推荐信范文
2015/03/23 职场文书
2019年大学生职业生涯规划书
2019/03/25 职场文书
HashMap实现保存两个key相同的数据
2021/06/30 Java/Android