演示正则表达式的拓展内容:函数:finditer(regex,string,[flags=0]):参数:和match.search.findall一样理解功能:将所有匹配的数据封装为一个一个的match对象,然后以iterator返回 import re str1 = 'i love shanghai shanghai shanghai so much' regex = 'shanghai' it = re.finditer(regex,str1) print(it,type(it)) '''
无捕获分组 当你要将一部分规则作为一个整体对它进行某些操作,比如指定其重复次数时,你需要将这部分规则用 (?:) 把它包围起来. 分支条件 在正则表达式中,分支条件是一个很常用的条件. 满足条件A 或者 满足条件B ,这个时候我们就可以使用分支条件了. 分支条件使用的符号为 | 代码示例: 我们突然发现,它把字符串分割成两个部分了 I have a dog 和 cat 而不是 I have a dog 和 I have a cat 如果我们只要区分dog和cat呢?正则要
捕获组分类 普通捕获组(Expression) 命名捕获组(?<name>Expression) 普通捕获组 从正则表达式左侧开始,每出现一个左括号“(”记做一个分组,分组编号从1开始.0代表整个表达式. 对于时间字符串:2017-04-25,表达式如下 (\\d{4})-((\\d{2})-(\\d{2})) 有4个左括号,所以有4个分组 public static final String DATE_STRING = "2017-04-25"; public stati