Python正则表达式
2016-08-24 14:04
155 查看
什么是正则
正则是一种对字符串进行特定匹配的模式正则表达式使用单个字符串组合来描述和匹配一系列符合某个句法规则的字符串
简单理解,就是对字符串的检索匹配和处理
Python通过re模块提供对正则表达式的支持
先将正则表达式的字符串形式编译为Pattern实例;使用Pattern实例处理文本并获得匹配结果;
使用实例获得信息,进行其他的操作
常用的元字符
代码 | 说明 |
---|---|
. | 匹配除换行符以外的任意字符 |
\w | 匹配字母或数字或下划线或汉字 |
\s | 匹配任意的空白符 |
\d | 匹配数字 |
\b | 匹配单词的开始或结束 |
^ | 匹配字符串的开始 |
$ | 匹配字符串的结束 |
[] | 匹配字符集[a-z]、[abc],元字符在字符集中不起作用 |
常用的限定符
代码/语法 | 说明 |
---|---|
* | 重复零次或更多 |
+ | 重复一次或更多次 |
? | 重复零次或一次 |
{n} | 重复n次 |
{n,} | 重复n次或更多次 |
{n,m} | 重复n到m次 |
分枝条件 |
常用的反义代码
代码/语法 | 说明 |
---|---|
\W | 匹配任意不是字母,数字,下划线,汉字的字符 |
\S | 匹配任意不是空白符的字符 |
\D | 匹配任意非数字的字符 |
\B | 匹配不是单词开头或结束的位置 |
[^x] | 匹配除了x以外的任意字符 |
[^aeiou] | 匹配除了aeiou这几个字母以外的任意字符 |
分组 ()
后向引用 \1 \2
Python re对象
import re方法/属性 | 作用 |
---|---|
match(pattern, string, flags=0) | RE是否在字符串刚开始的位置匹配 |
search(pattern, string, flags=0) | 扫描字符串,找到这个RE匹配的位置 |
findall(pattern, string, flags=0) | 找到RE匹配的所有子串,并把它们做一个列表返回 |
finditer(pattern, string, flags=0) | 找到RE匹配的所有子串,并把它们做一个迭代器返回,next()获得元素 |
sub(pattern, repl, string, count=0, flags=0) | 找到RE匹配的所有子串,并把它们做一个替换 |
subn(pattern, repl, string, count=0, flags=0) | 找到RE匹配的所有子串,并把它们做一个替换并返回总替换多少次 |
split(pattern, string, maxsplit=0, flags=0) | 找到RE匹配切割符,对匹配的数据进行切割 |
如果成功的话,就会返回一个’MatchObject’实例
MatchObject实例的方法/属性
方法/属性 | 说明 |
---|---|
group() | 返回被RE匹配的字符串 |
start() | 返回匹配开始的位置 |
end() | 返回匹配结束的位置 |
span() | 返回一个元祖包含匹配(开始,结束) |
预编译表达式 re.compile(pattern, flags=0)
编译正则表达式,如果正则表达式的字符串本身不合法,会报错用编译后的正则表达式去匹配字符串。
编译一个正则表达式,返回一个 pattern 对象,由于该对象已经包含了正则表达式,所以调用方法时不用再给出
相关文章推荐
- Python正则表达式的用法(2. 替换;3.拆分)
- 转载:Python正则表达式的用法(1. 匹配)
- 比较详细Python正则表达式操作指南(re使用)
- python 正则表达式 概述及常用字符
- Python 正则表达式操作指南
- python正则表达式操作指南[转载]
- 在python 中使用正则表达式
- python正则表达式分析新浪网天气预报,通过pyfetion发送短信的代码
- 比较详细Python正则表达式操作指南(re使用)
- Python正则表达式(二)
- Python天天美味(15) - Python正则表达式操作指南(re使用)(转)
- 正则表达式在python中的应用
- Python用re(正则表达式)模块过滤Telnet字体颜色
- Python正则表达式的几种匹配用法
- c++正则表达式,python
- python中正则表达式与re 模块
- python中的一些正则表达式的含义
- Python正则表达式(一)
- Python正则表达式(三)
- Python正则表达式操作指南