Skip to main content
 首页 » 编程设计

python之请解释正则表达式非零回顾断言如何以清晰的语言工作

2025年05月04日27freeliver54

有人可以用清晰的语言解释非零后向断言 (?<=.) 是如何实现的吗?技术上在下面的例子中有效吗?也就是说,你真的能走过它吗?代码工作正常并产生正确的结果。

我读到了 (?<=\w)在 http://www.regular-expressions.info/wordboundaries.html ,但对于试图了解后向断言的人来说,解释并不清楚。谢谢。

>>> text = 'sassy'    
>>> for (regexp,subst) in [ (r'(?<=.)s', '5'),(r'^s', '$') ]:   
...   text = re.sub(regexp,subst,text) 
...   
>>> text 
'$a55y' 

请您参考如下方法:

look-behind 就是这样做的:它验证当前字符之前的任何内容是否与 look-behind 表达式匹配。

在你的例子中,(?<=.)s将匹配 s , 但前提是它前面的内容匹配 . (即除 CRLF 之外的任何内容)。