06.09 Python 正則表達式斷言 Assertions

Python 正則表達式斷言 Assertions

上一部分我們介紹了捕獲分組。這一部分介紹一下正則表達式的斷言。有時候我們不僅要判斷一個字符串存在,還要判斷匹配的前面(look ahead)符合某一規則。

向前看的語法 (?=...)

Python 正則表達式斷言 Assertions

以上例子正則 Hello(?= world) 代表 Hello需要跟著 ' world',請注意返回的分組沒有 ' world'

(?!...) 問號換成了感嘆號,代表前面不能是 …

Python 正則表達式斷言 Assertions

foo(?! bar) 意思是foo前面不能是 ' bar',但是發現了 ' bar',所以返回 None

foo(?! baz) 意思是foo前面不能是 ' baz',符合,所以只返回 'foo'


分享到:


相關文章: