\d 表示一位数字字符  \d{3} 表示3个数字字符

匹配电话比如400-400-1118

import re

phone_number = re.compile(r'\d{3}-\d{3}-\d{4}')

mo = phone_number.search(r'for a number is 400-400-4000')

print(mo.group())

**********************************************************************

phone_number = re.compile(r('(\d{3})-(\d{3})-(\d{4}))  与之前的区别是进行了简单的分组

mo = phone_number.search(r'for a number is 400-400-4000')

print(mo.group(0), mo.group(1), mo.group(2))

*************************************************************************

|称为管道

?表明它前面的分组在这个模式中是可选的

batRegex = re.compile(r'Bat(wp)?man')

mo1 = batRegex.search('The Adventures of Batman')

mo1.group()

*表示匹配0次或多次

如:

bat = re.compile(r'Bat(wo)?man')

mo1 = bat.search(r'Batmanasxas')

mo1.group()               ->>>>>Batman

mo1 = bat.search(r'Batwowowowowomanasxas')

mo1.group()               ->>>>>Batwowowowowoman

+表明匹配一次或多次,

{}可以指定匹配的次数  {}通常是贪心匹配,在{}?则是最小匹配方式

\d 匹配数字

\D 除0-9的数字以外的任何字符

\w 在任何字母、数字或下划线字符

\W 除字母、数字和下划线以外的任何字符

\s 空格、制表符或换行符

\S 除空格、制表符或换行符

[^0123456789] 匹配除了数字之外的字符

no = re.compile(r'(.*)')

no.search('Servr the public trust.\n pasdasf\n').group()   ->>>>>>>>>>>>>Servr the public trust.

no = re.compile(r'(.*), re.DOTALL)

no.search('Servr the public trust.\n pasdasf\n').group() ->>>>>>>>>>>>>>'Servr the public trust.\n pasdasf\n

?匹配零次或一次前面的分组。
 *匹配零次或多次前面的分组。
 +匹配一次或多次前面的分组。
 {n}匹配 n 次前面的分组。
 {n,}匹配 n 次或更多前面的分组。
 {,m}匹配零次到 m 次前面的分组。
 {n,m}匹配至少 n 次、至多 m 次前面的分组。
 {n,m}?或*?或+?对前面的分组进行非贪心匹配。
 ^spam 意味着字符串必须以 spam 开始。
 spam$意味着字符串必须以 spam 结束。
 .匹配所有字符,换行符除外。
 \d、 \w 和\s 分别匹配数字、单词和空格。
 \D、 \W 和\S 分别匹配出数字、单词和空格外的所有字符。
 [abc]匹配方括号内的任意字符(诸如 a、 b 或 c)。
 [^abc]匹配不在方括号内的任意字符。

no = re.compile(r'robocop', re.I') 可以匹配任意大小写的字符串

*****************************************************************

def likestrip(text, chuqu=''):    if chuqu == '':        mod = re.compile(r'^*|(\s)*$')        if mod.search(text):            print(mod.sub('', text))    else:        mod = re.compile('^['+chuqu+']*|['+chuqu+']*$')        if mod.search(text):            print(mod.sub('', text))    print(text)likestrip('wer  ', 'w')编写一个类似于strip()的函数

转载于:https://www.cnblogs.com/Benguoby2/p/8595603.html

正则表达式(读书过程所记未整理)相关推荐

  1. 【原创】CSSOO的思想及CSS框架的应用(未整理完)

    CSSOO的思想及CSS框架的应用 前语:通过这次研究分析总结,个人对CSSOO的概念及应用的思路也更明确一些,是一个和大家共同学习的过程. 一.CSS框架 框架目的: 给出一个相对规范的开发方法,给 ...

  2. Python正则表达式常用的15个符号整理

    http://blog.itpub.net/31403259/viewspace-2157778/ Python正则表达式常用的15个符号整理: 1. ? 匹配0次或一次前面的分组(问号在正则表达式中 ...

  3. 亲测可用--word报错:子过程或函数未定义

    今天公司有同事的word出了问题,大概过程是:向word里面粘贴图片或者文字的时候出现一个弹窗说"子过程或函数未定义". 由于他的office是2010版本的,所以我选择了升级成2 ...

  4. electron 笔记大全(未整理完)

    electron大部分常用的API都在这了 主进程核心代码: const { app, BrowserWindow } = require('electron)app.on('ready', () = ...

  5. java正则匹配英文句号_「正则表达式」王国奇遇记

    第一回 初来乍到 NPC: "欢迎来到正则表达式的国度,勇士!这里的每一个人都使用正则表达式,我是这里的 NPC,每一个来到这里的人都将由我代为介绍正则世界的规则,至于能领悟到何种境界,就看 ...

  6. [读书笔记]自控力内容整理

    <自控力>其实是在今年(2016)年初读完的,今天整理之前的读书笔记,读了几遍觉得好多内容都很实用,简单整理了下.这本书对我的影响很大,它让我戒掉了3年多的熬夜的习惯,很难想象我可以在关灯 ...

  7. C_.NET+Framdwork题库(未整理完,有时间再补)

    第一章  Microsof.NET Framework 概述 1..NET Framework 可以运行在下列哪些操作系统之上,并为托管程序提供支持?(    ) WindowsNT 4.0 Wind ...

  8. 我是如何长期坚持阅读的:简易读书习惯培养|牛人读书炼成记

    大家好,今天我再给大家分享一篇我的知识星球「突破圈层,个体崛起」中的精华文章吧,看完这篇文章,你最后不得不感叹为什么优秀的人会这么优秀? 这篇文章还是来自于星球里的超体:章峰,这应该是我在公众号里第二 ...

  9. 好玩的编程网站整理 (未完成未整理) (暂时比较乱)

    最近找各种有趣的编程网站,也收藏了不少,有点混乱,现在暂时整理一下,先写网址和网站名,暂时不传图片.有空再传. 排名没有先后,哪个网站能打开就先写的哪个. 以下是暂时粘贴的资料:(没整理) 在过去的几 ...

最新文章

  1. NLP入门竞赛,搜狗新闻文本分类!拿几十万奖金!
  2. 真没想到中国有这么猛的软件,杀伤力太强了!
  3. python--lambda和def函数
  4. (转载)Python数据分析之pandas学习
  5. 中国福建省动漫产业建设开发现状及未来策略规划调研报告2021-2027年
  6. 人体识别_深度学习资讯 | 用于人体动作识别的26层卷积神经网络
  7. maven安装教程安装教程_Maven教程之春
  8. OS X Capitan 和 macOS Sierra U盘安装
  9. 百度下半年惩罚网站的低质量,坏消息到来硕士
  10. 为win10的todo应用配置altrun快捷键
  11. Excel批量向下填充不连续的空白单元格工具
  12. 5G无线网络架构及规划
  13. Chrome书签删除恢复
  14. php课程banner,5种关于banner图的实例代码
  15. (MySQL)Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...' for column 'readerName' at row 1
  16. mips-mti-gnu-linux,【歪门邪道】利用WSL搭建MIPS32构建环境
  17. 游戏AI行为选择算法一览
  18. PSM712静电保护二极管,RS-485端口防护神器
  19. 面试网答题(如老牛网)
  20. suse linux enterprise 11 密码,图解SUSE Linux Enterprise Server 11 SP4安装教程

热门文章

  1. windows 检查cuda安装_Windows云主机GPU驱动-CUDA安装使用
  2. php原生sql语法,thinkphp执行原生SQL语句的实现方法
  3. 做折线图坐标轴数字_Excel折线图表的另类表达制作?牛闪君使用了双线表达法来完成...
  4. linux下iostat命令无效,linux iostat命令详解
  5. 计算机二级高级应用考题,2016计算机二级MSOFFICE高级应用考试真题
  6. android中的add方法,Android入门之addWindow
  7. python xlwt写入已有表_Python中,添加写入数据到已经存在的Excel文件
  8. python语言属于哪一种语言_Python与Java:你应该学习哪种语言,他们有什么区别?...
  9. 【C、C++基础】什么时候用 “.” 什么时候用“->”(3个实例搞懂)
  10. 数字签名 那些密码技术_密码学中的数字签名