我写了一些代码,最后解析一个主要包含日期和附加数据的文档。并使用相应的数据返回日期。
到目前为止,我得到了你们的一些帮助:
f = open("Krupp.txt", "r")
contents = f.read()
f.close() #close the file
with open("testoutput.txt", "a+") as f:
#my regex to find german dates in special format
for m in re.finditer("(Montag|Dienstag|Mittwoch|Donnerstag|Freitag|Samstag|Sonnabend|Sonntag)(, )([123][0-9]|[1-9])(. )(Januar|Februar|März|April|Mai|Juni|Juli|August|September|Oktober|November|Dezember)( )([0-2][0-9][0-9][0-9])", contents):
#print whole matchobject
print m.group(0)
该文件如下所示:
Donnerstag, 16. März 2014
17:30 Uhr
19:00 Uhr
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
Details
Montag, 20. Oktober 2011
18:00 Uhr
19:30 Uhr
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
我的输出(如果已打印)如下所示:
Donnerstag, 16. März 2014
Montag, 20. Oktober 2011
现在我希望能够将这些日期用作startpos和endpos以进行进一步搜索。但我不知道如何索引这些日期。
如果我使用group(1),它只返回“Donnerstag”和“Montag”。如果我使用group(2),则返回“,”等等。
我理解,我的matchobject
是一组元组。但是我怎么能用那些元组呢?我希望能够在日期3和5或日期2和9之间进行搜索。
请写下noobs的答案:) 谢谢