我正在尝试根据RFC 5545解析iCal输入文件。 特别: - 属性名称 - 可选参数,每个参数以分号“;”开头并且可能有多个以逗号分隔的值(参数值可能是双引号,在这种情况下,它们可能包含冒号,分号和逗号) -Colon“:” - 财产价值
示例行:
> ORGANIZER;CN=Obi-WanKenobi;SENTBY="mailto:obiwan@padawan.com":mailto:laowaion@padawan.com
在这种情况下,该行将被读入缓冲区并进行解析(目前使用strtok),如下所示: 组织者是财产名称; CN = Obi-WanKenobi和SENTBY =“mailto:obiwan@padawan.com”是参数; mailto:lauwaion@padawan.com是财产价值。
我不知道从哪里开始。不同的输入案例几乎是无限的,我无法找出一个有效的算法来涵盖所有上述案例。 strtok要走的路吗?或者是否有另一个具有更智能解析器的C库?需要有人让我走上正轨。