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让图片按照exif信息里的创建时间进行排序的方法
Mar 16 Python
在Python中进行自动化单元测试的教程
Apr 15 Python
Python的Flask框架中实现简单的登录功能的教程
Apr 20 Python
Linux系统上Nginx+Python的web.py与Django框架环境
Dec 25 Python
python接口自动化测试之接口数据依赖的实现方法
Apr 26 Python
Django项目使用CircleCI的方法示例
Jul 14 Python
Python中关于浮点数的冷知识
Sep 22 Python
使用Python打造一款间谍程序的流程分析
Feb 21 Python
在Python中用GDAL实现矢量对栅格的切割实例
Mar 11 Python
PyTorch加载自己的数据集实例详解
Mar 18 Python
python自动脚本的pyautogui入门学习
Apr 01 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
PHP简单实现冒泡排序的方法
2016/12/26 PHP
详解PHP中的8个魔术常量
2020/07/06 PHP
jQuery 美元符冲突的解决方法
2010/03/28 Javascript
表单的焦点顺序tabindex和对应enter键提交
2013/01/04 Javascript
javascript实现促销倒计时+fixed固定在底部
2013/09/18 Javascript
JS对img标签进行优化使用onerror显示默认图像
2014/04/24 Javascript
javascript arguments使用示例
2014/12/16 Javascript
jQuery和AngularJS的区别浅析
2015/01/29 Javascript
AngularJS实现表单手动验证和表单自动验证
2015/12/09 Javascript
JavaScript下的时间格式处理函数Date.prototype.format
2016/01/27 Javascript
jQuery日程管理控件glDatePicker用法详解
2017/03/29 jQuery
JS实现中英文混合文字溢出友好截取功能
2018/08/06 Javascript
Nodejs中的JWT和Session的使用
2018/08/21 NodeJs
小程序rich-text组件如何改变内部img图片样式的方法
2019/05/22 Javascript
python的id()函数介绍
2013/02/10 Python
Python卸载模块的方法汇总
2016/06/07 Python
浅析Python中MySQLdb的事务处理功能
2016/09/21 Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
2016/10/09 Python
pyenv命令管理多个Python版本
2017/03/26 Python
Django数据库表反向生成实例解析
2018/02/06 Python
对Python中数组的几种使用方法总结
2018/06/28 Python
python实现银联支付和支付宝支付接入
2019/05/07 Python
在自动化中用python实现键盘操作的方法详解
2019/07/19 Python
学习Django知识点分享
2019/09/11 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
植物选择:Botanic Choice
2017/02/15 全球购物
美国休闲服装品牌:J.Crew Factory
2017/03/04 全球购物
工业自动化毕业生自荐信范文
2014/01/04 职场文书
企业党员公开承诺书
2014/03/26 职场文书
我们的节日国庆活动方案
2014/08/19 职场文书
农行心得体会
2014/09/02 职场文书
群众路线教育实践活动剖析材料
2014/09/30 职场文书
2014年英语工作总结
2014/12/20 职场文书
个人承诺书格式范文
2015/04/29 职场文书
Java多条件判断场景中规则执行器的设计
2021/06/26 Java/Android
UNION CREATIVE《Re:从零开始的异世界生活》雷姆手办
2022/03/20 日漫