标签:style 使用 os ar line table 不同的 网络
摘自网络,综合自己的理解:
函数名 | 原型 | 详解 | 返回类型 | 注意事项 |
re.match | import re re.match(pattern,string,flags) |
pattern:正则表达式,匹配成功,返回一个Match,否则返回一个None string:要匹配的字符串 flags:标志位,用于控制正则表达式的匹配方式,如是否区分大小写,多行匹配等等 |
返回一个_sre.SRE_Match对象,其有两个方法:group() groups() |
他只会去从字符串的开始与正则表达式做匹配; 并不会与字符串的所有字符进行匹配 |
re.search | re.search(pattern,string,flags) | 与match一模一样,唯一区别: 他会去匹配整个字符串,而match只会去匹配字符串的开始 |
groups():返回一个元组:(group(1),group(2)...)不包括group(0) group():默认返回group(0) |
对于一个string,无论其中有多少个被匹配上的字符串,他永远只返回第一个匹配上的字符串 |
re.sub | re.sub(pattern,repl,string,count) | pattern:正则表达式 repl:替换后的字符 string:要匹配的字符串 count:替换的个数,0代表所有 |
返回替换后的string | |
re.findall | re.findall(pattern,string,flag) | pattern:正则表达式 string:要匹配的字符串 flag:标志位 |
总是返回一个list,如果未匹配到任何,则返回一个空list | 与match和search不同的是:他会将一个字符串中所有的匹配到的目标均返回至列表中 |
re.compile | re.compile(pattern,flag) | flag:编译标识: I IGNORECASE 忽略大小写 M MULTILINE 多行匹配 针对于^和$使用 S DOTALL .号将匹配所有字符 X VERBOSE 将忽略规则表达式中的空白,若需要使用则需\+空白,同时允许使用‘#‘在规则表达式中作注释说明 flag使用方法:如,re.MULTILINE 多个flag可以使用‘|‘来分隔 |
对规格表达式进行预编译,返回一个pattern对象,可以使用这个pattern对象调用match和search等方法 | 这种方式对于需要做大量相同匹配的正则表达式可以大大提高效率 |
match、search、sub、findall、compile区别,布布扣,bubuko.com
match、search、sub、findall、compile区别
标签:style 使用 os ar line table 不同的 网络
原文地址:http://www.cnblogs.com/smile-zhou/p/3873684.html