我有一个文件,在那个emailid,phoneno和我的日期在那里。在python中使用正则表达式,如何逐个找到3个字段?期望的输出看起来像如何在Python中使用正则表达式从文件中提取数据?
Emailid: [email protected]
Phoneno: 1234567890
dateofbirth: xx-xx-xx
我知道如何单独找到字段。但我不知道如何一次找到3个。下面的代码片段显示了如何从文件中找到emailid。这段代码输出看起来像
Emaildid: [email protected]
...........................
import sys,re
pattern=r'''(?P<emailid>[a-zA-Z\.]*\@[a-zA-Z]*\.c[a-zA-Z]*)'''
regobj = re.compile(pattern, re.VERBOSE)
for line in sys.stdin:
results= regobj.finditer(line)
for result in results:
sys.stdout.write("%s\n"%result.group('emailid'))
是否所有三条信息总是一起,在同一行?在这种情况下,您不需要使用一个正则表达式来查找它们,您可以仅分析该行3次。如果它比这更复杂,那么我们需要看到你解析文件的一些例子。 – octern 2013-03-28 04:27:03
现在代码看起来比以前好多了... – lost 2013-03-28 04:38:51