Python 正则笔记--零宽断言

2020-09-03  本文已影响0人  J_SQ

零宽断言正如它的名字一样,是一种零宽度的匹配,它匹配到的内容不会保存到匹配结果中去,最终匹配结果只是一个位置(并不消耗字符串)。

  1. 正向先行断言(正前瞻):
    · 语法:xxx(?=pattern)
    · 作用:紧接xxx位置右侧的字符序列能够匹配pattern。

  2. 正向后行断言(正后顾):
    · 语法:(?<=pattern)xxx
    · 作用:紧接xxx位置左侧的字符序列能够匹配pattern。

例子:(?<=一)年(?=半)匹配前面是一和后面是半中的年字

  1. 负向先行断言(负前瞻)
    · 语法:xxx(?!pattern)
    · 作用:紧接该位置之后的字符序列不能匹配pattern。

  2. 负向后行断言(负后顾)
    · 语法:(?<!pattern)xxx
    · 作用:紧接该位置之前的字符序列不能匹配pattern。

例子:(?<!余)年(?!余) 匹配前面和后面不是余的年字

上一篇下一篇

猜你喜欢

热点阅读