python高级--正则表达式

re.match与re.search的区别

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

findall

在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。

注意: match 和 search 是匹配一次 findall 匹配所有。 

语法格式为:

re.findall(string[, pos[, endpos]])

参数

  string 待匹配的字符串。

  pos 可选参数,指定字符串的起始位置,默认为 0。

  endpos 可选参数,指定字符串的结束位置,默认为字符串的长度。

re.finditer

和 findall 类似,在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回。

re.split

split 方法按照能够匹配的子串将字符串分割后返回列表

^  匹配字符串开头

$    匹配字符串末尾

。   匹配任意字符,除了换行符

w   匹配数字字母下划线

W     匹配不是数字字母下划线

s       匹配任意空白字符

S      匹配任意不是空白字符

d    匹配 0-9 数字

D      匹配任意非数字

A       匹配字符串开始

z  匹配字符串结束

    匹配字符串结束,如果存在换行,只匹配换行前的结束字符串

原文地址:https://www.cnblogs.com/069527qwer/p/11968762.html