首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RRule和iCal复合递推

RRule和iCal复合递推
EN

Stack Overflow用户
提问于 2022-06-27 20:11:55
回答 1查看 72关注 0票数 0

我需要能够创造基于工作日的活动,而不论年份。感恩节就是一个很好的例子,11月的第四个星期四:

代码语言:javascript
复制
RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=11;BYDAY=Th;
BYMONTHDAY=22,23,24,25,26,27,28

但假设我想要感恩节后的星期天?这将是几乎相同的,除非感恩节在28日,下一个星期天是在12月。我试过:

代码语言:javascript
复制
RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=11,**12**;BYDAY=Su;
BYMONTHDAY=25,26,27,28,29,30,**01**

这是行不通的,因为它也将标志周日11/1和周日12/25-30。

EN

回答 1

Stack Overflow用户

发布于 2022-11-26 16:05:33

这类规则意味着尚未以iCal格式构建的计算,因此可能不可能在iCal中对上述所有规则进行建模。然而,通常可以为具体情况找到一些“解决办法”,您提到的例子就是这样的:

十一月第四个星期四之后的星期日:

代码语言:javascript
复制
FREQ=YEARLY;BYYEARDAY=-37,-36,-35,-34,-33,-32,-31;BYDAY=SU

12月第二个星期六之前的星期六(即12月的第一个星期六):

代码语言:javascript
复制
FREQ=YEARLY;BYMONTH=12;BYDAY=1SA

12月1日星期六之前的星期五:

代码语言:javascript
复制
FREQ=YEARLY;BYYEARDAY=-32,-31,-30,-29,-28,-27,-26;BYDAY=FR

12月的第一个星期六和前一个星期五:

代码语言:javascript
复制
FREQ=YEARLY;BYYEARDAY=-32,-31,-30,-29,-28,-27,-26,-25;BYMONTH=11,12;BYDAY=-1FR,1FR,1SA;BYSETPOS=1,2
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72777808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档