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笔记:正则表达式的主要内容,如果未能解决你的问题,请参考以下文章