python 正则式 概述及常用字符


Posted in Python onMay 07, 2009

1.元字符:
. 它匹配除了换行字符外的任何字符,在 alternate 模式(re.DOTALL)下它甚至可以匹配换行
^ 匹配行首。除非设置 MULTILINE 标志,它只是匹配字符串的开始。
$ 匹配行尾,行尾被定义为要么是字符串尾,要么是一个换行字符后面的任何位置。
* 重复0或N次
+ 重复1或N次
? 重复0或1次
{} 该限定符的意思是至少有 m 个重复,至多到 n 个重复
[] 它们常用来指定一个字符类别,所谓字符类别就是你想匹配的一个字符集
\ 反斜杠后面可以加不同的字符以表示不同特殊意义。它也可以用于取消所有的元字符,这样你就可以在模式中匹配它们了
| 可选项,或者 "or" 操作符。
() 组
2.[akm$]将匹配字符"a", "k", "m", 或 "$" 中的任意一个;"$"通常用作元字符,但在字符类别里,其特性被除去,恢复成普通字符。
3.用 "\" 开始的特殊字符所表示的预定义字符集
\d 匹配任何十进制数;它相当于类 [0-9]。
\D 匹配任何非数字字符;它相当于类 [^0-9]。
\s 匹配任何空白字符;它相当于类 [ \t\n\r\f\v]。
\S 匹配任何非空白字符;它相当于类 [^\t\n\r\f\v]。
\w 匹配任何字母数字字符;它相当于类 [a-zA-Z0-9_]。
\W 匹配任何非字母数字字符;它相当于类 [^a-zA-Z0-9_]。
\A 只匹配字符串首。当不在 MULTILINE 模式,\A 和 ^ 实际上是一样的。然而,在 MULTILINE 模式里它们是不同的;\A 只是匹配字符串首,而 ^ 还可以匹配在换行符之后字符串的任何位置。
\Z 只匹配字符串尾。
\b 单词边界。这是个零宽界定符(zero-width assertions)只用以匹配单词的词首和词尾。单词被定义为一个字母数字序列,因此词尾就是用空白符或非字母数字符来标示的。
\B 另一个零宽界定符(zero-width assertions),它正好同 \b 相反,只在当前位置不在单词边界时匹配。
4.重复元字符
* 重复0或N次
+ 重复1或N次
? 重复0或1次
{m,n},其中 m 和 n 是十进制整数。该限定符的意思是至少有 m 个重复,至多到 n 个重复
5.RegexObject对象常用方法
match() 决定 RE 是否在字符串刚开始的位置匹配
search() 扫描字符串,找到这个 RE 匹配的位置
findall() 找到 RE 匹配的所有子串,并把它们作为一个列表返回
finditer() 找到 RE 匹配的所有子串,并把它们作为一个迭代器返回
6.MatchObject对象的常用方法
group() 返回被 RE 匹配的字符串
start() 返回匹配开始的位置
end() 返回匹配结束的位置
span() 返回一个元组包含匹配 (开始,结束) 的位置
7.编译标志
DOTALL, S     使 . 匹配包括换行在内的所有字符
IGNORECASE, I     使匹配对大小写不敏感
LOCALE, L     做本地化识别(locale-aware)匹配
MULTILINE, M     多行匹配,影响 ^ 和 $
VERBOSE, X     能够使用 REs 的 verbose 状态,使之被组织得更清晰易懂

Python 相关文章推荐
python解析xml文件操作实例
Oct 05 Python
Python 判断是否为质数或素数的实例
Oct 30 Python
python图像常规操作
Nov 11 Python
python django框架中使用FastDFS分布式文件系统的安装方法
Jun 10 Python
使用python绘制温度变化雷达图
Oct 18 Python
在tensorflow中实现去除不足一个batch的数据
Jan 20 Python
Python任务调度利器之APScheduler详解
Apr 02 Python
利用python清除移动硬盘中的临时文件
Oct 28 Python
python实现Thrift服务端的方法
Apr 20 Python
pytorch训练神经网络爆内存的解决方案
May 22 Python
python中的getter与setter你了解吗
Mar 24 Python
Python+Tkinter打造签名设计工具
Apr 01 Python
python 正则式使用心得
May 07 #Python
python ip正则式
May 07 #Python
Python 正则表达式操作指南
May 04 #Python
python 正则表达式 概述及常用字符
May 04 #Python
用python实现的可以拷贝或剪切一个文件列表中的所有文件
Apr 30 #Python
Python 自动安装 Rising 杀毒软件
Apr 24 #Python
Python 解析XML文件
Apr 15 #Python
You might like
php 高效率写法 推荐
2010/02/21 PHP
自定义session存储机制避免会话保持问题
2014/10/08 PHP
PHP中实现crontab代码分享
2015/03/26 PHP
Centos6.5和Centos7 php环境搭建方法
2016/05/27 PHP
PHP7安装Redis扩展教程【Linux与Windows平台】
2016/09/30 PHP
PHP使用new StdClass()创建空对象的方法分析
2017/06/06 PHP
表单验证的完整应用案例探讨
2013/03/29 Javascript
js 时间格式与时间戳的相互转换示例代码
2013/12/25 Javascript
推荐一个自己用的封装好的javascript插件
2015/01/29 Javascript
jQuery实现简单的间隔向上滚动效果
2015/03/09 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
2015/06/24 Javascript
JavaScript的面向对象编程基础
2015/08/13 Javascript
跟我学习javascript的循环
2015/11/18 Javascript
Bootstrap作品展示站点实战项目2
2016/10/14 Javascript
js弹性势能动画之抛物线运动实例详解
2017/07/27 Javascript
JavaScript实现的搜索及高亮显示功能示例
2017/08/14 Javascript
深入浅析Vue不同场景下组件间的数据交流
2017/08/15 Javascript
vue与TypeScript集成配置最简教程(推荐)
2017/10/17 Javascript
微信小程序实现左右联动的实战记录
2018/07/05 Javascript
深入浅析vue-cli@3.0 使用及配置说明
2019/05/08 Javascript
详解微信小程序入门从这里出发(登录注册、开发工具、文件及结构介绍)
2020/07/21 Javascript
简化Python的Django框架代码的一些示例
2015/04/20 Python
python生成随机密码或随机字符串的方法
2015/07/03 Python
Django 使用easy_thumbnails压缩上传的图片方法
2019/07/26 Python
python 经典数字滤波实例
2019/12/16 Python
Kaufmann Mercantile官网:家居装饰、配件、户外及更多
2018/09/28 全球购物
EQVVS官网:设计师男装和女装
2018/10/24 全球购物
入党积极分子思想汇报范文
2014/01/05 职场文书
幼儿园教研活动方案
2014/01/19 职场文书
《愚公移山》教学反思
2014/02/20 职场文书
开业典礼主持词
2014/03/21 职场文书
求职信怎么写
2014/05/23 职场文书
放飞理想演讲稿
2014/09/09 职场文书
十八大标语口号
2014/10/09 职场文书
模范教师材料大全
2014/12/16 职场文书
2015年全民国防教育日活动总结
2015/03/23 职场文书