python笔记:正则表达式

Posted 刘文巾

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python笔记:正则表达式相关的知识,希望对你有一定的参考价值。

1 正则表达式

带?的都是非贪婪匹配,匹配的越少越好

1.1 正则表达式中的转义符

注:\\w还包含_

大写的字母一般是”不“的意思

字符串开头和结尾一个A一个z正好是26个字母的开始和结尾

2 正则表达式相关函数(re包)

re.match(pattern,string)

从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,返回none

pattern——需要匹配的正则表达式

string——需要匹配的字符串

search(pattern,string)

扫描整个字符串并返回第一个成功的匹配。

pattern——需要匹配的正则表达式

string——需要匹配的字符串

re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。

compile

用于编译正则表达式,生成一个正则表达式( Pattern )对象.

直接使用这个正则表达式对象进行 match() 和 search() 这两个函数。

sub

用于替换字符串中的匹配项

findall

以列表的形式返回能匹配的子串

需要匹配的内容是连续的五个非数字的子串

finditer

搜索string,返回一个迭代器

3 分组 

如果正则表达式中定义了组,就可以在Match对象上用group()方法提取出子串来。

注意到group(0)永远是原始字符串,group(1)group(2)……表示第1、2、……个子串。

       如果我们分的组过多,记不住是第几个了。那么我们可以在每一组需要匹配的pattern前面加上" ?P<…> ",之后就可以用<>里面的东西进行索引了

以上是关于python笔记:正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

python学习笔记9:正则表达式

python 正则表达式(RE)笔记1

Python下的正则表达式原理和优化笔记

Python学习笔记之正则表达式

《python核心编程》——正则表达式学习笔记

我的Python笔记·正则表达式