从.ics文件中删除主题 - python

时间:2018-05-29 06:18:39

标签: python icalendar

我需要帮助您使用.ics格式的日历。我想从python中删除主题预约(在' SUMMARY:'之后的文本),并将其另存为.ics。我怎样才能做到这一点?下面我从我的.ics文件中插入一段文字。

09 May 2018 10:37AM

1 个答案:

答案 0 :(得分:0)

您的输入不是有效的ICS文件(请注意END:VEVENT之前的START:VEVENT和任何对象之外的SEQUENCE。因此,您无法使用an ICS parser。根据您获取此文件的位置,以及其消费者是否需要ICS或此ICS相邻格式,您可能需要投资修复该文件。

只是打击主题可以简单地使用正则表达式:

import re

with open('test.ics', 'r', encoding='utf-8') as icsf:
    broken_ics = icsf.read()

out = re.sub(r'\nSUMMARY:(?:.*(?:\n )?)*', '', broken_ics)
print(out)