【发布时间】:2017-01-08 15:32:21
【问题描述】:
我是个菜鸟,第一次编写代码并尝试边做边学。 我正在使用这个:
import re
f = open('aaa.txt', 'r')
string=f.read()
c = re.findall(r"Guest last name: (.*)", string)
print "Dear Mr.", c
返回
Dear Mr. ['XXXX']
我想知道,有没有办法得到类似的结果
Dear Mr. XXXX
相反?
提前致谢。
【问题讨论】:
-
你只有一个名字到行尾是真的吗?我会使用
\S+之类的东西,而不是.*-r"Guest last name: (\S+)"。或者\S*如果它可以是空的。无论如何,使用前检查结果。 -
任何时候某个东西返回一个 ['something'] ,这意味着它在一个数组中,您需要使用 [n] 访问它,其中 n 是数组中元素的位置。
-
幸运的是,我在 Python 中阅读的导出文档每行有 1 个字符串,所以我很容易使用正则表达式。但是,我仍然会尝试使其更准确,无论是对于实际代码还是学习正则表达式。
标签: python regex python-2.7 match