python里使用正则表达式的后向搜索肯定模式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python里使用正则表达式的后向搜索肯定模式相关的知识,希望对你有一定的参考价值。

在前面学习了比较多模式,有前向搜索的,也有后向搜索的,有肯定模式的,也有否定模式的。这次再来学习一个,就是后向搜索肯定模式,意思就是说已经扫描过了的字符串,还想后悔去看一下,是否可以匹配。它的语法是:(?<=pattern)。比如下面的例子,就是用来识别Twitter的账号,但它这种模式只会匹配,不会出现在匹配的字符串中,如下:
 

[python] view plain copy
 
  1. #python 3.6  
  2. #  
  3. import re  
  4.   
  5. twitter = re.compile(  
  6.     ‘‘‘‘‘ 
  7.     # A twitter handle: @username 
  8.     (?<[email protected]
  9.     ([\w\d_]+)       # username 
  10.     ‘‘‘,  
  11.     re.VERBOSE)  
  12.   
  13. text = ‘‘‘‘‘This text includes two Twitter handles. 
  14. One for @caimouse, and one for the author, @caijunsheng. 
  15. ‘‘‘  
  16.   
  17. print(text)  
  18. for match in twitter.findall(text):  
  19.     print(‘Handle:‘, match)  



 结果输出如下:
 This text includes two Twitter handles.
One for @caimouse, and one for the author, @caijunsheng.






以上是关于python里使用正则表达式的后向搜索肯定模式的主要内容,如果未能解决你的问题,请参考以下文章

python里使用正则表达式的后向搜索肯定模式

非固定长度的正则表达式负回溯

如何让这个积极的后向正则表达式在 Safari 中运行

正则表达式中的后向引用

正则表达式之基础

C# 中的正则表达式,否定后向表达式