我保留了技术笔记的日记文件。每个条目都带有时间戳,如下所示:
# Monday 02012-05-07 at 01:45:20 PM
This is a sample note
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
# Wednesday 02012-06-06 at 03:44:11 PM
Here is another one.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia
deserunt mollit anim id est laborum.
想根据时间戳标题将这些注释分解为单独的文件。例如This is a sample note.txt
,Here is another really long title.txt
。我确定我必须在某些时候截断文件名,但我的想法是根据日记条目的第一行来播种文件名。
看起来我不能通过 python 修改文件的创建日期,所以我想保留条目时间戳作为笔记正文的一部分。
我有一个正则表达式模式来捕获非常适合我的时间戳:
#(\s)(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday)(\s)(.*)
并且可能使用该正则表达式来遍历文件并将每个条目分解,但我不太确定如何遍历日记文件并将其分解为单个文件。有很多获取实际正则表达式模式或特定行的示例,但我想在这里做更多的事情,并且很难将它们拼凑在一起。
这是所需文件内容的示例(日期戳 + 直到下一个日期戳匹配的所有文本):
bash$ cat This\ is\ a\ sample\ note.txt
Monday 02012-05-07 at 01:45:20 PM
This is a sample note
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
bash$