正则表达式是对字符串的最简约的规则的表述。python也有专门的正则表达式模块re.

正则表达式函数 释义
re.match() 从头开始匹配,匹配失败返回None,匹配成功可通过group(0)返回匹配成功的字符串
re.search() 扫描整个字符串,并返回第一个匹配的字符串
re.sub() 对符合要求的所有子串进行替换
re.findall() 以列表形式返回所有符合条件的子串    
re.split() 以模式作为切分符号切分字符串,并返回列表
re.finditer() 找到 RE 匹配的所有子串,并把它们作为一个迭代器返回
re.compile() 把那些经常使用的正则表达式编译成正则表达式对象
re.group() 返回被 RE 匹配的字符串
re.start() 返回匹配开始的位置
re.end() 返回匹配结束的位置
re.span() 返回一个元组包含匹配 (开始,结束) 的位置
import  relist=['15865548338cong' ,'abcd18701687236ef','gafei18511371536' ,'wb15865737271dad13244556677']
print(list)
for items in list:# startl=re.match( r'\d{11}',items )print('match:',l )if l!=None:print('match.group(0)',l.group(0))# start-endm = re.search( '[0-9]{11}',items )print('search:',m.group( 0))print('search,.start:',m.start())print('search,.end:',m.end())print('search,.span:',m.span())# replacen=re.sub( r'\d','*' ,items)print('sub:',n )# return listo=re.findall(r'\d{11}',items )print('findall:',o )# str2list p=re.split( r'\d+',items )print('split:',p )# iteratorq=re.finditer(r'\d+',items )for i in q:print('finditer:' ,i.group())pattern=re.compile(r'\d{11}')print pattern.findall(items)print('***********************************************' )

输出结果:

['15865548338cong', 'abcd18701687236ef', 'gafei18511371536', 'wb15865737271dad13244556677']
('match:', <_sre.SRE_Match object at 0x00000000025D2510>)
('match.group(0)', '15865548338')
('search:', '15865548338')
('search,.start:', 0)
('search,.end:', 11)
('search,.span:', (0, 11))
('sub:', '***********cong')
('findall:', ['15865548338'])
('split:', ['', 'cong'])
('finditer:', '15865548338')
['15865548338']
***********************************************
('match:', None)
('search:', '18701687236')
('search,.start:', 4)
('search,.end:', 15)
('search,.span:', (4, 15))
('sub:', 'abcd***********ef')
('findall:', ['18701687236'])
('split:', ['abcd', 'ef'])
('finditer:', '18701687236')
['18701687236']
***********************************************
('match:', None)
('search:', '18511371536')
('search,.start:', 5)
('search,.end:', 16)
('search,.span:', (5, 16))
('sub:', 'gafei***********')
('findall:', ['18511371536'])
('split:', ['gafei', ''])
('finditer:', '18511371536')
['18511371536']
***********************************************
('match:', None)
('search:', '15865737271')
('search,.start:', 2)
('search,.end:', 13)
('search,.span:', (2, 13))
('sub:', 'wb***********dad***********')
('findall:', ['15865737271', '13244556677'])
('split:', ['wb', 'dad', ''])
('finditer:', '15865737271')
('finditer:', '13244556677')
['15865737271', '13244556677']
***********************************************
请按任意键继续. . .

转载于:https://www.cnblogs.com/wangbin2188/p/6547183.html

python正则表达式模块相关推荐

  1. python正则表达式需要模块_使用Python正则表达式模块,让操作更加简单

    处理文本数据的一个主要任务就是创建许多以文本为基础的特性. 人们可能想要在文本中找出特定格式的内容,比如找出存在于文本中的电子邮件,或者大型文本中的电话号码. 虽然想要实现上述功能听起来很繁琐,但是如 ...

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

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

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

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

  4. python正则表达式模块_Python常用模块——正则表达式re模块

    Python常用模块--正则表达式re模块 引子 请从以下文件里取出所有的手机号 姓名 地区 身高 体重 电话 况咏蜜 北京 171 48 13651054608 王心颜 上海 169 46 1381 ...

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

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

  6. python判断邮箱格式是否正确_利用Python正则表达式模块,对邮箱帐号格式正确性校验(以QQ邮箱为例)...

    ''' 非纯数字邮箱(@qq.com,@foxmail.com)?? a.1 您的邮箱帐号应该由a-z的英文字母(不区分大小写)开头: a.2 可由英文字母.0-9的数字(但不能使用全数字).点.减号 ...

  7. python 结尾回车_理解不了Python正则表达式?我帮你搞定

    点击蓝字"python教程"关注我们哟! 在学习Python的过程中,我们难免会遇到比较晦涩.难以理解的内容,比如Python中的正则表达式.面向对象等内容,为了更好地帮助大家理解 ...

  8. python 正则表达式 sub_python 正则表达式 re.sub re.subn

    python正则表达式模块简介 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式.Python 1.5之前版本则是通过 regex 模块提供 Emacs 风格的模式 ...

  9. Python正则表达式常用flag含义与用法详解

    封面图片:<Python程序设计实验指导书>(ISBN:9787302525790),董付国,清华大学出版社 图书详情(京东): ================== Python正则表达 ...

最新文章

  1. jQuery $.post()返回类型为json时不进入回调函数的原因及解决方法
  2. java反射机制--reflection
  3. bzoj 3357 [Usaco2004]等差数列 dp
  4. 可能是你见过的最完善的微前端解决方案
  5. (1)信息熵,条件熵,信息增益,信息增益率
  6. rapidxml 文件读写,增加删除节点
  7. openGL之API学习(一四七)实时渲染、光线追踪渲染和栅格化渲染
  8. vue3实现商城左右联动数据---BScroll(vue3代码复制就能用)
  9. 计算机系军训口号四句霸气,军训口号四句霸气一班
  10. 安全圈年终大趴,FIT 2019首日盛况全程回顾
  11. 一文彻底解决An error occurred while creating the AVD. See idea.log for details问题
  12. FITC标记亲和纯化大鼠抗小鼠IgG(H+L)二抗说明书
  13. 0基础学Linux-从小白到大牛(3)Linux命令
  14. 我能把你的美丽比作月亮吗
  15. 《图形图像处理》课程项目设计任务书
  16. BOM对象、cookie、session
  17. 经常用的代码 命令行解析 api 以及vue组件复用方法总结
  18. 【Allegro学习笔记】常规标贴封装创建-0402封装创建实例
  19. postman测试接口被登陆拦截,怎么办?
  20. Note for Defensive Programming

热门文章

  1. 用计算机源码计算加法,MFC实现简单计算器(支持加减乘除和括号运算)
  2. router vue 多个路径_vue-router 路径问题
  3. es6与java的相似度,特斯拉Model Y对比蔚来ES6!这次对比结果出乎意料
  4. 项目管理指标_项目经理必须掌握的九大项目管理问题!
  5. android 游戏现状,年终总结:Android十款画面最强3D游戏
  6. JAVA连接数据库使用的API是什么呢,如何使用JDBC API在Java中建立数据库连接?
  7. memcached客户端_对比Memcached和Redis,谁才是适合你的缓存?
  8. node升级命令_Laravel Mix 4升级说明与“排坑儿”指南
  9. C库函数:scanf、fscanf、printf、fprintf、sprintf、 snprintf
  10. Android5.1修改以太网MAC地址(SElinux)【转】