python正则表达式使用实例 python的正则表达式匹配( 三 )


re.compile(pattern[, flags]) 4. 匹配的方式
正则表达式匹配的方式主要有3种match, search和findall 。如果你懂英语的话 , 就知道它们的区别 , 这里前两个都是单一匹配 , 只会匹配一个流程 , 如果有多个符合匹配规则的 , 它们只会返回第一个结果 , 而findall会把所有符合候选的都匹配出来 。而前两个的区别就是match必须是开头就要能够匹配 , 也就是和startwith差不多的效果 , 而search则可以在任意位置进行匹配 。
下面看一下三个方法的参数表示 , 其中pattern为我们制定的正则表达式 , string为我们要匹配的字符串 , flags表示匹配模式:
re.match(pattern, string, flags=0)re.search(pattern, string, flags=0)findall(string[, pos[, endpos]]) 因此我们选择方式时有以下几个步骤:
是否需要匹配多个?是 , 选择findall
是否需要从头匹配?是 , 选择match
一般情况使用search
5. 匹配结果展示
匹配结果展示主要有以下四个部分组成:
group([group1, …]) 方法用于获得一个或多个分组匹配的字符串 , 当要获得整个匹配的子串时 , 可直接使用 group() 或 group(0);start([group]) 方法用于获取分组匹配的子串在整个字符串中的起始位置(子串第一个字符的索引) , 参数默认值为 0;end([group]) 方法用于获取分组匹配的子串在整个字符串中的结束位置(子串最后一个字符的索引 1) , 参数默认值为 0;span([group]) 方法返回 (start(group), end(group)) 。 例如下面这个例子 , 主要表现了我们如何调用这四个部分 。>>>im

猜你喜欢