学习python的正则表达式,主要有两个方面学习:

第一,学习如何写正则表达式,主要是掌握其语法规范。正则表达式的语法规范是通用的,对各种开发语言都是一致的。

第二,学习如何使用正则表达式,也就是掌握python中相应的模块,在python中,通过提供的标准模块 re 来提供相应的使用正则表达式的api

正则表达式的核心作用就是匹配文本片段,即给出一个正则表达式,以及一段文本,看看这段文本中哪些片段是可以与正则表达式匹配的。

利用正则表达式可以实现非常强大的文本处理功能,如匹配、查找、替换、分组等。

例1:我们先来看一个简单例子:

#coding=utf-8

importre#search的第一个参数是 正则表达式,第二个参数是要处理的文本

if re.search('abc','12abc45'): #结果输出find

print "find"

else:print "None"

#search的第一个参数是 正则表达式,第二个参数是要处理的文本

if re.match('abc','12abc45'): #结果输出None

print "find"

else:print "None"

上面的代码涉及到如下信息:

1)re模块,这是python提供的处理正则表达式的标准模块,包含了很多有用的方法

2)re模块的search方法和match方法,这两个方法都是在给定文本中查找与指定正则表达式第一个相匹配的文本片段。如果找到,返回一个对象,对象中包含了相应的文本片段信息。如果找不到,返回None。所以其查找的结果可以用作条件表达式中。

search与match的区别是,search方法是在整个字符串中查找匹配的字串,而match方法是在开头匹配,也就是说必须开头就要符合。

3)search与match方法的第一个参数就是正在表达式,这里是一个普通的字符串,其实这是最简单的正则表达式。正则表达式最强大的之处就是它有各种元字符。

如  a.b  ,这里的.就是一个特殊字符,可以匹配任何单个字符(除换行符),如re.search('a.c','12axc45') 是可以匹配成功的。

例2:精确匹配的处理

上面介绍的 search 方法是在整个字符串中查找匹配,match方法是从头匹配,但对后面的无要求。

在某些场合下,需要精确匹配,如给定正则表达式为  a.c  ,希望只匹配 axc , abc 等,头尾不希望有多余的字符。

这是可在正则表达式的头加符号︿ ,在结尾加上 $ ,可以强制精确匹配。但然也可以只限制开始 或 结束。

使用 ︿,其实相当于使用match方法。

如:

>>> print re.search('^abc$','abcd')

None

>>> print re.search('^abc$','abc')

python 正则表达式方法_Python正则表达式一: 基本使用方法相关推荐

  1. python正则表达式操作指南_Python正则表达式操作指南

    原文作者:A.M. Kuchling (amk@amk.ca) 翻译人员:FireHare 校对人员:Leal 适用版本:Python 1.5 及后续版本 摘要 本文是通过Python的 re 模块来 ...

  2. python正则表达式模块_Python正则表达式函数模块

    今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的资料.这里主要介绍python中常用的正则表达式处理函数. 方法/属性 作用 match() 决定 R ...

  3. python正则表达式指南_Python正则表达式指南(转)

    1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十 ...

  4. python正则表达式模块_Python正则表达式模块(re模块)

    Python是我接触到的第一门编程语言,虽然它足够简单,但是对于当时刚刚接触编程语言的我来说还是有些难度的,于是只是了解了一些Python的基本语法,稍微深入一点的地方都没怎么了解.不过,到现在为止, ...

  5. python正则表达式代码_python正则表达式的使用(实验代码)

    正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re 模块使 Python ...

  6. python正则表达式模块_Python正则表达式模块re

    正则表达式是一种通用的字符串匹配模式,使用灵活功能强大. Python正则表达式支持的语法可以参见这张表 Python的标准模块re提供了对正则表达式的支持,使用r'' 表示正则字符串可以避免转义字符 ...

  7. python findall函数_Python正则表达式

    什么是正则表达式 •正则表达式是字符串处理的有力工具,比字符串自身提供的方法提供了更强大的处理功能. •例如判断一个字符串是否是合法的Email地址,可以通过构造一个规则(正则表达式),去判断字符串是 ...

  8. python 正则表达式生成_python正则表达式

    字符串是我们在编程的时候经常用到的一种数据类型,检查会在字符串里面查找一些内容,对于比较简单的查找,字符串的一些内置的方法就可以处理,对于比较复杂的字符串,或者有一些内容经常变化的字符串查找,那么我们 ...

  9. python 正则表达式判断_Python 正则表达式

    跟随练习: import re original_string = r"ABC\-001" rexp_string = r'\w{3}\\\-\d{3}' result = re. ...

最新文章

  1. ubuntu笔记 - 安装和配置Sublime Text
  2. 扯一扯 之 面试经历
  3. $NF和 NF的区别
  4. android xml 设置图片,android 的几种图片效果xml写法
  5. 动态规划——How to Type(hdu2577)
  6. 双侧检验的p值和单侧检验_假设检验03----假设检验的步骤
  7. TensorFlow进阶:车牌号识别项目
  8. 三菱Q PLC解密 用户名功能块FB破解
  9. 可变模糊集理论matlab程序,可变模糊集理论的哲学基础
  10. 少儿Python编程教程
  11. Java二维码登录流程实现(包含短地址生成,含部分代码)
  12. 本来共享的计算机突然无法访问,WIN7局域网无法启用共享访问解决办法
  13. 英文网页翻译中文失败、QQ文件打不开、QQ系统消息打不开等
  14. java学士后课程_java学士后课程
  15. 蘑菇街商家登录php源码,蘑菇街
  16. 类型多样的游戏特效网页特效素材,速来收藏
  17. (附源码)node.js学生钟点工管理系统 毕业设计 290011
  18. Hadoop性能调优
  19. git为私有仓库设置密码_我搭建了一套企业级私有Git服务,抗住了每天上万次攻击!...
  20. 【蓝桥杯单片机国赛 第九届】

热门文章

  1. PVD与CVD性能比较
  2. Dockerfile构建实践
  3. 服务器技术综述(二)
  4. python 爬取手机app的信息
  5. Ipython的Window与Linux详细安装
  6. #includebits/stdc++.h包含C++的所有头文件
  7. [转载]Surging 分布式微服务框架使用入门
  8. time 和 datetime 模块
  9. Hive metastore三种配置方式
  10. tensorflow---alexnet training (tflearn)