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中的__init__和__new__
Mar 12 Python
python logging类库使用例子
Nov 22 Python
Django框架中的对象列表视图使用示例
Jul 21 Python
Python中的字符串类型基本知识学习教程
Feb 04 Python
Python的socket模块源码中的一些实现要点分析
Jun 06 Python
浅谈Python 的枚举 Enum
Jun 12 Python
Python实现判断一个字符串是否包含子串的方法总结
Nov 21 Python
简单谈谈python中的lambda表达式
Jan 19 Python
初探TensorFLow从文件读取图片的四种方式
Feb 06 Python
tensorflow实现加载mnist数据集
Sep 08 Python
python3多线程知识点总结
Sep 26 Python
PyTorch中的padding(边缘填充)操作方式
Jan 03 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语法(1)
2006/10/09 PHP
学习php设计模式 php实现访问者模式(Visitor)
2015/12/07 PHP
ThinkPHP中create()方法自动验证表单信息
2017/04/28 PHP
PHP实现非阻塞模式的方法分析
2018/07/26 PHP
解决windows上php xdebug 无法调试的问题
2020/02/19 PHP
Laravel实现批量更新多条数据
2020/04/06 PHP
收集的网上用的ajax之chat.js文件
2007/04/08 Javascript
使用jQuery全局事件ajaxStart为特定请求实现提示效果的代码
2010/12/30 Javascript
JavaScript实现QueryString获取GET参数的方法
2013/07/02 Javascript
原生javascript实现的分页插件pagenav
2014/08/28 Javascript
JQuery用户名校验的具体实现
2016/03/18 Javascript
学习Node.js模块机制
2016/10/17 Javascript
jQuery.parseHTML() 函数详解
2017/01/09 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
十大热门的JavaScript框架和库
2017/03/21 Javascript
浅谈vue-cli 3.0.x 初体验
2018/04/11 Javascript
webpack file-loader和url-loader的区别
2019/01/15 Javascript
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
基于JavaScript或jQuery实现网站夜间/高亮模式
2020/05/30 jQuery
在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
2015/04/25 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
python list多级排序知识点总结
2019/10/23 Python
Python基础类继承重写实现原理解析
2020/04/03 Python
jupyter notebook清除输出方式
2020/04/10 Python
python读取图像矩阵文件并转换为向量实例
2020/06/18 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
欧洲领先的电子和电信零售商和服务提供商:Currys PC World Business
2017/12/05 全球购物
日本即尚网:JSHOPPERS.com(支持中文)
2019/12/03 全球购物
领导干部培训感言
2014/01/23 职场文书
请假条范文大全
2014/04/10 职场文书
2014年度安全生产目标管理责任书
2014/07/25 职场文书
大学生迟到检讨书500字
2014/10/17 职场文书
房产公证书
2015/01/23 职场文书
redis实现排行榜功能
2021/05/24 Redis
在Java中Collection的一些常用方法总结
2021/06/13 Java/Android
Python实现为PDF去除水印的示例代码
2022/04/03 Python