正则网站:regex101.com
在了解re模块之前,我们可以先了解一下正则表达式,正则表达式在很多语言中都有使用,但是不同的语言直接又有有些细小的区别,下面我们就来列举一下在python语言中常用的一些正则表达式:
re模块
re模块是python中处理正则表达式的一个模块,通过re模块的方法,把正则表达式pattern编译成正则对象,以便使用正则对象的方法。那为什么要使用re模块来把正则表达式搞成正则对象呢,最主要的是可以提高代码的执行效率,我们来看个例子:
1 import timeit
2 print timeit.timeit(setup='''import re; reg = re.compile('<(?P<tagname>\w*)>.*</(?P=tagname)>')''', stmt='''reg.match('<h1>xxx</h1>')''', number=1000000)
3 print timeit.timeit(setup='''import re''', stmt='''re.match('<(?P<tagname>\w*)>.*</(?P=tagname)>', '<h1>xxx</h1>')''', number=1000000)

打印结果为:
#1.正则匹配是,优先编译成正则对象,然后再进行匹配,这样程序的效率更高
编译正则对象
正则匹配总写一个r是什么意思?
r表示raw的简及raw string 意思是原生字符,也就是说是这个字符串中间的特殊字符不用转义
比如你要表示‘\n’,可以这样:r'\n'
但是如果你不用原生字符 而是用字符串你得这样:‘\\n’
1 import re
2 reg = re.compile(r'abc.*')
3 print(type(reg))
4 print(reg)

打印结果为:

转载于:https://www.cnblogs.com/yangjinbiao/p/7841414.html

day19——常用正则表达式、re正则对象和正则匹配效率比较、编译正则对象相关推荐

  1. 转载:常用正则表达式大全!(例如:匹配中文、匹配html)

    常用正则表达式大全!(例如:匹配中文.匹配html) 匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[ ...

  2. 常用正则表达式大全 (转)

    网上找到的常用正则表达式,留着以后可能用得上,正则表达式实在是不好写,只好拿来主义了,在Delphi中没有自己带有正则表达式的组件,靠第三方了,都说PerlRegEx 是首选, 去这里下载,官方网站: ...

  3. 2016/07/11 常用正则表达式大全 (转)

    网上找到的常用正则表达式,留着以后可能用得上,正则表达式实在是不好写,只好拿来主义了,在Delphi中没有自己带有正则表达式的组件,靠第三方了,都说PerlRegEx 是首选, 去这里下载,官方网站: ...

  4. 正则表达式的用法和常用正则表达式大全(转)

    我们在编写程序时, 无可避免的都需要用到验证各种信息是否正确, 特别是在登录和注册账户时, 需要验证是否符合格式, 然后再传回服务器进行验证 我们先来看一下这个正则表达式如何运用 //邮箱 + (BO ...

  5. 正则匹配任意字符(常用正则表达式的书写)

    匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff] 评注:可以用来计算字符串的 ...

  6. Python正则匹配HTML,python正则匹配html标签_Python爬虫常用正则表达式及HTML网页标签分析总结...

    这篇文章主要是介绍Python爬取网页信息时,经常使用的正则表达式及方法.它是一篇总结性文章,实用性比较大,主要解决自己遇到的爬虫问题,也希望对你有所帮助~ 当然如果会Selenium基于自动化测试爬 ...

  7. matlab读取正则找科学,MATLAB常用正则表达式记录

    MATLAB正则表达式 一.正则表达式 正则表达式是一串用于定义某种模式的字符.在有些情况下(例如,在解析程序输入或处理文本块时),您通常会使用正则表达式在文本中搜索与该模式匹配的一组单词. 数据处理 ...

  8. python正则匹配html标签_Python爬虫常用正则表达式及HTML网页标签分析总结

    这篇文章主要是介绍Python爬取网页信息时,经常使用的正则表达式及方法.它是一篇总结性文章,实用性比较大,主要解决自己遇到的爬虫问题,也希望对你有所帮助~ 当然如果会Selenium基于自动化测试爬 ...

  9. input正则邮箱_常用正则表达式—邮箱(Email)

    常用正则表达式-邮箱(Email) 本文针对有一点正则基础的同学,如果你对正则一无所知,请移步"正则表达式30分钟入门教程"学习. 要验证一个字符串是否为邮箱的话,首先要了解邮箱账 ...

  10. 正则表达式——常用正则表达式验证有效数字、密码、真实姓名、邮箱、身份证号码及其正则捕获懒惰性原理

    常用正则表达式及其懒惰性原理 由两部分组成 元字符 量词元字符 * 0到多个 + 1到多个 ? 0到1个 {n} 出现n次 {n,} 出现到多次 {n,m} 出现n到m次 特殊元字符 \ 转义字符(普 ...

最新文章

  1. js中对函数设置默认参数值的3种方法
  2. Golang 标准库log的实现
  3. 1113 Integer Set Partition (25 分)【难度: 一般 / 知识点: 思维 贪心】
  4. 成吉思汗:“世界之鞭”还是“人类之王”?
  5. Elastic AMP监控.NET程序性能
  6. java中堆和栈有什么区别?
  7. 5分绩点转4分_5分绩点转4分(五分制 四分制 对照表)
  8. 【干货】PEP8风格指南
  9. Saur家的官方语言
  10. python日常能做什么-为什么Python这么火?看看它能做什么你就知道了
  11. 只做两个龅牙门牙_孔子画像中的门牙格外突出,画师为何不给圣人开美颜?...
  12. table标签中thead、tbody、tfoot的作用
  13. IAR for STM8的基本使用教程
  14. 《STL》— NYOJ STL练习 习题汇总
  15. 目标检测的数据集制作一般流程(Pascal VOC标准格式)
  16. 激光振镜误差校正算法C语言,一种基于双线性插值法的激光振镜图形校正算法的制作方法...
  17. 行动诠释价值,城联优品韩董事长出席广东英德抗洪捐赠公益活动会
  18. 计算机相关知识——阻塞和非阻塞,同步和异步等相关概念
  19. might和could的区别用法_情态动词could,would,might等的用法区别
  20. 现代社会,各行各业的竞争越来越激烈

热门文章

  1. Atitit 函数调用的原理与本质attilax总结 stdcall cdecl区别
  2. Atitit  J2EE平台相关规范--39个  3.J2SE平台相关规范--42个
  3. Atitit 表达式原理 语法分析 原理与实践 解析java的dsl  递归下降是现阶段主流的语法分析方法
  4. paip.系统无法在消息文件中为 Application 找到消息号为 0x2350 的消息文本。服务器存储空间不足,无法处理此命令
  5. paip.提升安全性---选择一个安全的加密算法
  6. paip.提升用户体验----解决浏览器关闭后自动退出的问题
  7. paip.项目开发效率提升之思索
  8. Rust : wasm尝试 与wasmtime库
  9. 从Rust到远方:C星系
  10. 曹 雷 : 证券基金经营机构如何理解科技是投资而非投入