一、正则表达式

  首先,我们需要感性的了解下什么是正则表达式,简单的是说“正则表达式”就是一个“表达式”,更准确定义是:“用一个简洁的方法来实现对“一组字符串”的表达式。

最终目的就是实现“一行胜千言”的效果。

二、实现正则表示的关键

 () 操作符
() 原生字符串
() re库
() 正则表示对象编译

三、详解正则表示关键要素

  3.1 操作符

  我们想实现用一个简单的表达式实现对一组字符串的表达,那首先就需要了解操作符。我们回过头来再看下正则表达式的实际构造,我们先看一个实例,实例内容如下所示。

>>>> P(Y|YT|YTH|YTHO)?N

  由上面这个正则表达式的实例,我们可以看出一个正则表达式的构造有两部分构成,即:“字符串” + “操作符”构成。

  所以我们在学习正则表达式的过程中,我们首先需要学习和了解的就是这个操作符的实际含义和常用实例场景。有关正则的“操作符”具体含义,简单收集如下。

  3.2 原生字符串

  为什么要介绍和学习原生字符串呢?主要是因为在python自带的正则表达式的标准库re库,其通常使用原生字符串来写各种正则表达式,所以我们需要了解下。

  其实所谓“原生字符串”主要是正对我们常用的“字符串”而言的,大家只需要简单的记住:原生字符串就是不带“转义字符(\)”的字符串。因为在正则的操作符中经常会见到这个“\”,如:\d、

\w’而这个反斜线(\)在普通字符中,提代表转移符,具有特殊的含义,即将一些特出符号标注转义为普通符号。而在正则表达式中为避免一些不必要的复杂与错误的操作,故将此有特征含义

的字符串的“转义含义”给抹去了。

  具体原生字符串的实现方式,可见如下示例。

原生字符串实现格式:
>>>> r'text' 实际举例:
>>>> r'[1-9\d{5}]'
>>>> r'\d{3}-\d{8|\d{4}-\d{7}}'

  3.3 re库

  (1)re库简单介绍

  re库是python默认自带的标准库,无需单独安装,直接使用import进行引入即可正常使用,调入具体操作如下。

>>>>import re

  

  (2)re 库主要功能函数

  有关re库的6个主要功能函数,坚持收集罗列如下表所示。

  3.4 正则表达式对象编译

regex = re.compile(r'text')

  

最新文章

  1. ASP.NET提取多层嵌套json数据的方法
  2. AlloyRenderingEngine开门大吉
  3. 通过RGB灯输出七色
  4. C#读txt文件并写入二维数组中(txt数据行,列未知)
  5. 解决如何监听Activity切换
  6. C#中的lock关键字有何作用
  7. JDO持久 (jdbc ejb)
  8. 【转载】spring的普通类中如何取session和request对像
  9. python3 中自带urllib库可下载图片到本地
  10. Linux学习笔记31——网络信息
  11. Intelli idea 常用快捷键汇总
  12. 教你成为全栈工程师(Full Stack Developer) 一-各显神通总结八大类编程语言的区别
  13. OC学习7——类别、扩展和协议
  14. Selenium中三种等待的使用方式---规避网络延迟、代码不稳定问题
  15. Linux连不上校园网怎么办?
  16. centos安装nginx和配置
  17. ASP.NET开发,从二层至三层,至面向对象 (3)
  18. 注解Annotation实现原理与自定义注解例子
  19. LOJ#2632. 「BalticOI 2011 Day1」打开灯泡 Switch the Lamp On
  20. Maven中使用Jetty容器

热门文章

  1. Python模块学习——optparse
  2. WCF IIS部署
  3. InnoSetup自动检测并安装.Net Framework
  4. VMWare安装Ubuntu 16.04
  5. L2-013. 红色警报 (并查集)
  6. 从网络架构方面简析循环神经网络RNN
  7. FZU 2219【贪心】
  8. tarjan求割点割边的思考
  9. uoj#352. 新年的五维几何(概率期望+爆搜)
  10. 洛谷P2046 [NOI2010]海拔(最小割,平面图转对偶图)