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时间模块datetime、time、calendar的使用方法
Jan 13 Python
详解Python中类的定义与使用
Apr 11 Python
python使用matplotlib绘图时图例显示问题的解决
Apr 27 Python
通过源码分析Python中的切片赋值
May 08 Python
django框架如何集成celery进行开发
May 24 Python
python批量从es取数据的方法(文档数超过10000)
Dec 27 Python
PyQt5 加载图片和文本文件的实例
Jun 14 Python
python绘制地震散点图
Jun 18 Python
Jacobi迭代算法的Python实现详解
Jun 29 Python
Python 从attribute到property详解
Mar 05 Python
Python+OpenCV检测灯光亮点的实现方法
Nov 02 Python
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
Apr 13 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
解决控件遮挡问题:关于有窗口元素和无窗口元素
2007/01/28 PHP
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
一些php技巧与注意事项分析
2011/02/03 PHP
php生成静态页面的简单示例
2014/04/17 PHP
yii中widget的用法
2014/12/03 PHP
PHP+shell实现多线程的方法
2015/07/01 PHP
基于jQuery的固定表格头部的代码(IE6,7,8测试通过)
2010/05/18 Javascript
Javascript根据指定下标或对象删除数组元素
2012/12/21 Javascript
jqeury-easyui-layout问题解决方法
2014/03/24 Javascript
jQuery插件实现大图全屏图片相册
2015/03/14 Javascript
JavaScript String(字符串)对象的简单实例(推荐)
2016/08/31 Javascript
jQuery生成假加载动画效果
2016/12/01 Javascript
详解JS异步加载的三种方式
2017/03/07 Javascript
快速解决brew安装特定版本flow的问题
2018/05/17 Javascript
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
vue-next/runtime-core 源码阅读指南详解
2019/10/25 Javascript
JS中自定义事件的使用与触发操作实例分析
2019/11/01 Javascript
jQuery--遍历操作实例小结【后代、同胞及过滤】
2020/05/22 jQuery
js利用拖放实现添加删除
2020/08/27 Javascript
[35:29]Secret vs VG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
Python爬虫工程师面试问题总结
2018/03/22 Python
Python从函数参数类型引出元组实例分析
2019/05/28 Python
keras实现图像预处理并生成一个generator的案例
2020/06/17 Python
Pytho爬虫中Requests设置请求头Headers的方法
2020/09/22 Python
移动端HTML5 input常见问题(小结)
2020/09/28 HTML / CSS
校本教研工作方案
2014/01/14 职场文书
幼儿园托班开学寄语
2014/01/18 职场文书
服务员岗位职责
2014/01/29 职场文书
荷叶圆圆教学反思
2014/02/01 职场文书
新颖的化妆品活动方案
2014/08/21 职场文书
师德师风自查材料
2014/10/14 职场文书
英文慰问信范文
2015/03/24 职场文书
高一数学教学反思
2016/02/18 职场文书
煤矿安全生产管理协议书
2016/03/22 职场文书
导游词之藏龙百瀑景区
2019/12/30 职场文书
2021年最新用于图像处理的Python库总结
2021/06/15 Python