不捕获数据
(?:表达式),从而不捕获数据,还能使用分组的功能
分组的回溯引用可以使用分组的回溯引用,使用\N可以引用编号为N的分组,因此上述例子的代码我们可以改为: 通过这个例子,可以发现 \1 表示的就是第一个分组,在这里第一个分组匹配的是 font 所以\1 就代表font。
正向先行断言:(?=表达式),指在某个位置向右看,表示所在位置右侧必须能匹配表达式
反向先行断言(?!表达式)的作用是保证右边不能出现某字符。
例如:如果要取出喜欢两个字,要求喜欢的前面有我,后面有你,这个时候就要这么写:(?<=我)喜欢(?=你)。
|