我正在寻找一种iCalendar规则匹配算法,该算法将允许我验证用户输入的特定日期是否落在由 iCal 重复事件规则确定的日期。
例如:
- 用户输入
Nov 1, 2014
(假设我可以解析日期) - ical事件的重复规则为
FREQ=MONTHLY;BYMONTHDAY=1
(这基本上意味着该事件发生在每个月的第一天)
很明显,2014 年 11 月 1 日确实是该事件中的某个日期。我怎样才能以编程方式解决这个问题?在给定开始日期的情况下,如何获取由重复规则确定的日期列表?
有没有这样做的示例或库?
我主要在寻找 JS 和 PHP 库/片段,但任何类型的伪代码都应该没问题。
澄清:iCalendar 指的是 RFC 5545 Internet Calendaring and Scheduling Core Object Specification