理解积极向前看断言

han*_*s-t 0 python regex lookahead

从Python 3.4.1文档:

(?= ...)

积极前瞻断言.如果包含的正则表达式(此处由...表示)在当前位置成功匹配,则成功,否则失败.但是,一旦尝试了包含的表达式,匹配的引擎就不会前进 ; 在断言开始的地方尝试了模式的其余部分.

我试图理解Python中的正则表达式.你能帮我理解第二句话,特别是粗体字吗?任何例子将不胜感激.

hwn*_*wnd 6

Lookarounds是零宽度断言.它们不会消耗字符串上的任何字符.

要简要介绍文档的粗体部分:

这意味着在向前看之后,正则表达式引擎返回到它开始查看的字符串上的相同位置.从那里,它可以再次开始匹配......

关键点:

您可以获得零宽度匹配,这是一个不消耗任何字符的匹配.它只匹配字符串中的位置.零宽度的点是验证正则表达式是否可以向前看或不能与当前位置相匹配,而不是将它们添加到整体匹配中.