python中使用正则表达式的后向搜索肯定模式(推荐)

yipeiwu_com5年前Python基础

正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。

在前面学习了比较多模式,有前向搜索的,也有后向搜索的,有肯定模式的,也有否定模式的。这次再来学习一个,就是后向搜索肯定模式,意思就是说已经扫描过了的字符串,还想后悔去看一下,是否可以匹配。

它的语法是:(?<=pattern)。比如下面的例子,就是用来识别Twitter的账号,但它这种模式只会匹配,不会出现在匹配的字符串中,如下: 

#python 3.6
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579
#
import re
twitter = re.compile(
  '''
  # A twitter handle: @username
  (?<=@)
  ([\w\d_]+)    # username
  ''',
  re.VERBOSE)
text = '''This text includes two Twitter handles.
One for @caimouse, and one for the author, @caijunsheng.
'''
print(text)
for match in twitter.findall(text):
  print('Handle:', match)

 结果输出如下:

 This text includes two Twitter handles.
One for @caimouse, and one for the author, @caijunsheng.
Handle: caimouse
Handle: caijunsheng

总结

以上所述是小编给大家介绍的python中使用正则表达式的后向搜索肯定模式,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

Python使用修饰器进行异常日志记录操作示例

本文实例讲述了Python使用修饰器进行异常日志记录操作。分享给大家供大家参考,具体如下: 当脚本中需要进行的的相同的异常操作很多的时候,可以用修饰器来简化代码。比如我需要记录抛出的异常...

Django 对IP访问频率进行限制的例子

REST_FRAMEWORK 配置 对使用 rest_framework 框架的项目来说,可以使用框架的设置来对api的访问频率进行限制 REST_FRAMEWORK = {...

Pytorch DataLoader 变长数据处理方式

关于Pytorch中怎么自定义Dataset数据集类、怎样使用DataLoader迭代加载数据,这篇官方文档已经说得很清楚了,这里就不在赘述。 现在的问题:有的时候,特别对于NLP任务...

Python处理文本文件中控制字符的方法

控制字符 控制字符(Control Character),或者说非打印字符,出现于特定的信息文本中,表示某一控制功能的字符,如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(...

python 提取文件指定列的方法示例

之前用featureCount 处理得到结果,要提出第一列gene_id 和 readcount 列,首先软件输出的第一行默认是你使用的命令行,没有用,用bash批量删掉。 for...