python 正则表达式在代码里的使用(python中正则表达式与模式匹配)
python 正则表达式在代码里的使用
python中正则表达式与模式匹配一、前言
在之前找工作过程中,面试时经常被问到会不会python,懂不懂正则表达式。心里想:软件的东西和芯片设计有什么关系?咱也不知道因为啥用这个,咱也不敢问啊!在网上搜索到了一篇关于脚本在asic领域中应用的文章(原文见参考文献1),里边提到了python的用武之地:
本文以《python编程快速上手——让繁琐工作自动化》书中的示例,讲述利用python实现文本中特定内容提取的方式。
二、提取特定内容示例
需求:找出文本中所有的电话号码和邮件地址。设计方案:在剪贴板的文本中提取出所有与电话号码和邮件地址格式匹配的字符串。有了需求和设计方案,现根据电话号码和邮箱地址格式编写正则表达式。先来看看程序代码,再做讲解。
phoneandemail.py
此处电话号码的格式是:三个数字组成的区号(可选),三个数字,四个数字,任意数空格+ext/x/ext.+任意数空格+2到5个数字组成的分机号(可选)。每个部分间以“-”号连接。邮箱地址格式:由字母、数字以及_%+-符号组成的用户名,@符号以及.后的域名,域名由2-4个字母和数字集合组成。根据上述模式可编写对应的正则表达式。
python的模式匹配有一个简单固定的套路,import导入re包,regex = re.compile('''<正则表达式>''
')。<模式匹配的内容列表> = regex.findall(<待搜索字符串>)。三步搞定。编写正则表达式时,在字符串前加r防止字符转义。将各个部分分组并换行以提高代码的可读性,此时需要将re.verbose作为re.compile()函数的第二个参数传入来忽略表达式中的空白和换行。
三、运行结果
复制代码首部注释掉的文本,然后运行程序。结果如下:
前两行打印出了匹配内容的列表,之后以自定义的统一格式打印欲搜索的内容。程序运行结果正确。本文以一个小例子测试了python正则表达式提取文本特定内容的功能,之后想尝试利用python自动生成veriloghdl中module的例化模板。
总结
以上所述是小编给大家介绍的python正则表达式匹配,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
原文链接:https://www.cnblogs.com/moluoqishi/archive/2019/05/07/10825221.html
- python接口管理系统(基于Python实现用户管理系统)
- kmp算法怎么用c描述(详解小白之KMP算法及python实现)
- python二叉树是怎么来的(Python二叉树的镜像转换实现方法示例)
- python解析身份证号(python验证身份证信息实例代码)
- python自动识别旋转验证码(Python实现字符型图片验证码识别完整过程详解)
- python成绩判断系统(Python根据成绩分析系统浅析)
- python爬虫书籍经典(Python利用lxml模块爬取豆瓣读书排行榜的方法与分析)
- python编写程序读写数据库(详解js文件通过python访问数据库方法)
- python编写端口扫描器(Python开发网站目录扫描器的实现)
- python函数式编程源码(python仿evething的文件搜索器实例代码)
- 最简单python的100个代码(20条非常实用的Python代码实例)
- python对字典值排序(Python实现字典按key或者value进行排序操作示例sorted)
- python创建列表并查询(python列表使用实现名字管理系统)
- python的基本函数及用法(Python3.6.x中内置函数总结及讲解)
- pythonmatplotlib怎么画区域(python matplotlib实现双Y轴的实例)
- python网页自动化selenium(python利用selenium进行浏览器爬虫)
- 包水饺(包水饺手法怎么包视频)
- 越南河粉(越南河粉来自哪里)
- 按这几方面养护佛肚竹盆景,保证枝叶繁茂,造型优美(按这几方面养护佛肚竹盆景)
- 冰岛旅游攻略(冰岛旅游攻略及花费八日游)
- 寒假旅游攻略(成都寒假旅游攻略)
- 菲律宾旅游攻略(菲律宾旅游攻略地图)
热门推荐
- echarts柱状图颜色设置(Echarts基本入门之柱状图、折线图通用配置)
- tomcat的startup闪退的原因(直接双击启动tomcat中的startup.bat闪退原因及解决方法)
- nginx如何代理项目(Nginx代理同域名前后端分离项目的完整步骤)
- python opencv替换背景教程(基于OpenCV python3实现证件照换背景的方法)
- 在php中与数据库连接的技术(PHP7.0连接DB操作实例分析基于mysqli)
- 织梦dedecms好吗(织梦dedecms单页制作教程)
- sqlserver栏位说明(SQL Server重置IDENTITY属性种子值操作)
- css3伸缩布局教学(css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效)
- C#中的深拷贝与浅拷贝的区别
- 2020app前端ui框架(amazeui页面分析之登录页面的示例代码)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9