正则表达式中的零宽断言

我们利用领款断言,是要去匹配一个特定的位置的,并不难以理解。

(?=exp)也叫零宽度正预测先行断言,它断言自身出现的位置的后面能匹配表达式exp。

      比如\b(?=re)\w+\b,匹配以re开头的单词,如查找reading a book.时,它会匹配reading

  ((?=\d)\d{3})+\b,用它对1234567890进行查找时结果是234567890

(?<=exp)也叫零宽度正回顾后发断言,它断言自身出现的位置的前面能匹配表达式exp。

     比如\b\w+(?<=ing\b)会匹配以ing结尾的单词的前半部分(除了ing以外的部分),例如在查找I am reading.时,它匹配read

零宽度负预测先行断言(?!exp),断言此位置的后面不能匹配表达式exp

    比如 \b\wq(?!u)\w\b  会匹配  Iraq fighting中的 q f

   

猜你喜欢

转载自www.cnblogs.com/3532gll/p/9613597.html