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 相关文章推荐
关于numpy中np.nonzero()函数用法的详解
Feb 07 Python
python rsa 加密解密
Mar 20 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
Aug 07 Python
Python批量更改文件名的实现方法
Oct 29 Python
使用python进行文本预处理和提取特征的实例
Jun 05 Python
基于python实现学生管理系统
Oct 17 Python
django模板结构优化的方法
Feb 28 Python
python 字典操作提取key,value的方法
Jun 26 Python
Python Pandas 获取列匹配特定值的行的索引问题
Jul 01 Python
python 通过手机号识别出对应的微信性别(实例代码)
Dec 22 Python
浅谈Tensorflow 动态双向RNN的输出问题
Jan 20 Python
python代码实现备忘录案例讲解
Jul 26 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/08/19 PHP
php在文件指定行中写入代码的方法
2012/05/23 PHP
win7+apache+php+mysql环境配置操作详解
2013/06/10 PHP
PHP采集类snoopy详细介绍(snoopy使用教程)
2014/06/19 PHP
PHP-CGI远程代码执行漏洞分析与防范
2017/05/07 PHP
php中html_entity_decode实现HTML实体转义
2018/06/13 PHP
PHP convert_cyr_string()函数讲解
2019/02/13 PHP
PHP哈希表实现算法原理解析
2020/12/11 PHP
javascript面向对象之共享成员属性与方法及prototype关键字用法
2015/01/13 Javascript
jQuery如何解决IE输入框不能输入的问题
2016/10/08 Javascript
jQuery中弹出iframe内嵌页面元素到父页面并全屏化的实例代码
2016/12/27 Javascript
一篇文章搞定JavaScript类型转换(面试常见)
2017/01/21 Javascript
JavaScript Uploadify文件上传实例
2017/02/28 Javascript
vue.js 获取当前自定义属性值
2017/06/01 Javascript
探究react-native 源码的图片缓存问题
2017/08/24 Javascript
微信小程序如何实现在线客服功能
2019/10/16 Javascript
python生成器表达式和列表解析
2016/03/10 Python
Python实现破解猜数游戏算法示例
2017/09/25 Python
Python运维自动化之nginx配置文件对比操作示例
2018/08/29 Python
windows下python虚拟环境virtualenv安装和使用详解
2019/07/16 Python
使用Puppeteer爬取微信文章的实现
2020/02/11 Python
手把手教你安装Windows版本的Tensorflow
2020/03/26 Python
使用python实现时间序列白噪声检验方式
2020/06/03 Python
Final类有什么特点
2012/04/25 面试题
银行毕业实习自我鉴定
2013/09/19 职场文书
应届毕业生求职自荐书
2014/01/03 职场文书
高中生自我评语大全
2014/01/19 职场文书
七年级历史教学反思
2014/02/05 职场文书
新闻发布会主持词
2014/03/28 职场文书
公司领导班子对照检查材料
2014/09/24 职场文书
交通事故委托书范本
2014/09/28 职场文书
2015年党性分析材料
2014/12/19 职场文书
担保书格式范文
2015/09/22 职场文书
微信早安问候语
2015/11/10 职场文书
「SHOW BY ROCK!!」“雫シークレットマインド”组合单曲MV公开
2022/03/21 日漫
Android存储中最基本的文件存储方式
2022/04/30 Java/Android