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实现bucket排序算法实例分析
May 04 Python
python通过paramiko复制远程文件及文件目录到本地
Apr 30 Python
PyTorch中Tensor的维度变换实现
Aug 18 Python
Numpy之将矩阵拉成向量的实例
Nov 30 Python
Python OrderedDict字典排序方法详解
May 21 Python
Java多线程实现四种方式原理详解
Jun 02 Python
python 中的9个实用技巧,助你提高开发效率
Aug 30 Python
关于Python 解决Python3.9 pandas.read_excel(‘xxx.xlsx‘)报错的问题
Nov 28 Python
pycharm实现猜数游戏
Dec 07 Python
python画图时设置分辨率和画布大小的实现(plt.figure())
Jan 08 Python
用Python写一个简易版弹球游戏
Apr 13 Python
Python快速实现一键抠图功能的全过程
Jun 29 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
农民和部队如何穿矿
2020/03/04 星际争霸
mac下Apache + MySql + PHP搭建网站开发环境
2014/06/02 PHP
解密ThinkPHP3.1.2版本之模块和操作映射
2014/06/19 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
jQuery子元素过滤选择器用法示例
2016/09/09 Javascript
关于验证码在IE中不刷新的快速解决方法
2016/09/23 Javascript
BootStrap Tooltip插件源码解析
2016/12/27 Javascript
微信小程序开发(二)图片上传+服务端接收详解
2017/01/11 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
2017/02/10 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
Angular.js自定义指令学习笔记实例
2017/02/24 Javascript
微信小程序的生命周期的详解
2017/10/19 Javascript
vuex的简单使用教程
2018/02/02 Javascript
解决Vue打包之后文件路径出错的问题
2018/03/06 Javascript
nodejs中方法和模块用法示例
2018/12/24 NodeJs
Node4-5静态资源服务器实战以及优化压缩文件实例内容
2019/08/29 Javascript
js回溯法计算最佳旅行线路代码实例
2019/09/11 Javascript
IntelliJ IDEA编辑器配置vue高亮显示
2019/09/26 Javascript
vue+webpack 更换主题N种方案优劣分析
2019/10/28 Javascript
[53:38]OG vs LGD 2018国际邀请赛淘汰赛BO3 第三场 8.26
2018/08/30 DOTA
Python比较配置文件的方法实例详解
2019/06/06 Python
Django Rest framework认证组件详细用法
2019/07/25 Python
Python 静态方法和类方法实例分析
2019/11/21 Python
python pyenv多版本管理工具的使用
2019/12/23 Python
Python装饰器如何实现修复过程解析
2020/09/05 Python
css3 transform 3d 使用css3创建动态3d立方体(html5实践)
2013/01/06 HTML / CSS
HTML5 新标签全部总汇(推荐)
2016/06/13 HTML / CSS
HTML5中indexedDB 数据库的使用实例
2017/05/11 HTML / CSS
全球知名提供各类营养保健品的零售商:Vitamin Shoppe
2016/10/09 全球购物
吉列剃须刀英国官网:Gillette英国
2019/03/28 全球购物
2013年大学生的自我鉴定
2013/10/24 职场文书
白莲教口号
2014/06/18 职场文书
2015年国庆节慰问信
2015/03/23 职场文书
留学推荐信(中英文版)
2015/03/26 职场文书
独生子女证明范本
2015/06/19 职场文书
德劲DE1107指针试高灵敏度全波段收音机机评
2022/04/05 无线电