首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用'finditer‘的’match`的长度限制

使用'finditer‘的’match`的长度限制
EN

Stack Overflow用户
提问于 2017-12-19 10:15:31
回答 0查看 265关注 0票数 0

假设下面的字符串

代码语言:javascript
复制
s = '\nThe model layer\nDjango provides an abstraction layer (the “models”) for structuring and manipulating the data of your Web application. Learn more about it below:\n\nModels: Introduction to models | Field types | Indexes | Meta options | Model class\nQuerySets: Making queries | QuerySet method reference | Lookup expressions\nModel instances: Instance methods | Accessing related objects\nMigrations: Introduction to Migrations | Operations reference | SchemaEditor | Writing migrations\nAdvanced: Managers | Raw SQL | Transactions | Aggregation | Search | Custom fields | Multiple databases | Custom lookups | Query Expressions | Conditional Expressions | Database Functions\nOther: Supported databases | Legacy databases | Providing initial data | Optimize database access | PostgreSQL specific features\n'

findall检索标题

代码语言:javascript
复制
In [17]: chapter = re.findall(r'\n.+:', s)
In [18]: chapter
Out[18]:
['\nDjango provides an abstraction layer (the “models”) for structuring and manipulating the data of your Web application. Learn more about it below:',
 '\nModels:',
 '\nQuerySets:',
 '\nModel instances:',
 '\nMigrations:',
 '\nAdvanced:',
 '\nOther:']

它工作得很好,但是对于finditer

代码语言:javascript
复制
In [19]: chap = re.finiter(r'\n.+:', s)
In [21]: [ i for i in chap]
Out[21]:
[<_sre.SRE_Match object; span=(16, 162), match='\nDjango provides an abstraction layer (the “mode>,
 <_sre.SRE_Match object; span=(163, 171), match='\nModels:'>,
 <_sre.SRE_Match object; span=(247, 258), match='\nQuerySets:'>,
 <_sre.SRE_Match object; span=(322, 339), match='\nModel instances:'>,
 <_sre.SRE_Match object; span=(384, 396), match='\nMigrations:'>,
 <_sre.SRE_Match object; span=(482, 492), match='\nAdvanced:'>,
 <_sre.SRE_Match object; span=(670, 677), match='\nOther:'>]

比较他们的索引

代码语言:javascript
复制
'\nDjango provides an abstraction layer (the “models”) for structuring and manipulating 
the data of your Web application. Learn more about it below:',

[<_sre.SRE_Match object; span=(16, 162), 
match='\nDjango provides an abstraction layer (the “mode>,

finditer无法剪切完成的段落。

官方文档对匹配长度没有限制。6.2. re — Regular expression operations — Python 3.6.4rc1 documentation

有什么问题吗?

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47879126

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档