首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用python正则表达式从文件的编号列表中获取内容

使用python正则表达式从文件的编号列表中获取内容
EN

Stack Overflow用户
提问于 2018-07-31 20:28:37
回答 4查看 70关注 0票数 0

我有一个包含以下行的文件:

lines.txt

代码语言:javascript
复制
1. robert
   smith
2. harry
3. john

我想像下面这样获取数组:

代码语言:javascript
复制
["robert\nsmith","harry","john"]

我尝试了这样的东西:

代码语言:javascript
复制
with open('lines.txt') as fh:
    m = [re.match(r"^\d+\.(.*)",line) for line in fh.readlines()]
    print(m)
    for i in m:
        print(i.groups())

它输出以下内容:

代码语言:javascript
复制
[<_sre.SRE_Match object; span=(0, 9), match='1. robert'>, None, <_sre.SRE_Match object; span=(0, 8), match='2. harry'>, <_sre.SRE_Match object; span=(0, 7), match='3. john'>]
(' robert',)
Traceback (most recent call last):
  File "D:\workspaces\workspace6\PdfGenerator\PdfGenerator.py", line 5, in <module>
    print(i.groups())
AttributeError: 'NoneType' object has no attribute 'groups'

看起来我处理这个问题的方式是非常错误的。你将如何解决这个问题?

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

https://stackoverflow.com/questions/51613428

复制
相关文章

相似问题

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