Какое выражение iCal RRULE следует использовать, чтобы найти пятницу после последней среды месяца? Поэтому мне нужно (RRULE: FREQ = MONTHLY; BYDAY = -1WE) + 2 дня ...Как найти пятницу после последней среды месяца?
ответ
Я согласен с Evert, что это невозможно с помощью одного RRULE.
Вы можете, однако, достичь этого с помощью комбинации нескольких RRULE.
Таким образом, вы можете разделить ваше мероприятие на несколько событий, каждый из которых имеет один из RRULEs ниже:
Если среда падает на последний или предпоследний день месяца, наша пятница будет 1-й или 2-го в следующем месяце
FREQ=MONTHLY;BYMONTHDAY=1,2;BYDAY=1FR
В месяцев 31 день самая ранняя дата за прошлую среду является 25-м, так что в следующую пятницу будет один из дней 27-31:
FREQ=MONTHLY;BYMONTH=1,3,5,7,8,10,12;BYMONTHDAY=27,28,29,30,31;BYDAY=FR
В месяцев с 30 дней самая ранняя дата за прошлую среду является 24, так что следующая пятница будет один из дней 26-30:
FREQ=MONTHLY;BYMONTH=4,6,9,11;BYMONTHDAY=26,27,28,29,30;BYDAY=FR
февраля является сложным, потому что на невисокосных годы пятница, которую мы хотим, будет находиться между 24-м и 28-м, но в високосные годы она находится между 25 и 29-м. Тем не менее, в течение ближайших 50 лет есть только один високосный год, в котором 24 февраля является пятница, что 2040 (проверьте результат FREQ=MONTHLY;BYMONTHDAY=24;BYMONTH=2;BYDAY=FR), так что следующий RRULE будет не правильно до 2040:
FREQ=MONTHLY;BYMONTH=2;BYMONTHDAY=24,25,26,27,28,29;BYDAY=FR
Если вы обеспокоены високосные года, добавьте EXDATE, как показано ниже, и вы хорошо в течение следующих 100 лет (сделать эти значения даты и время, если дата начала имеет время):
EXDATE;VALUE=DATE:20400224,20680224,20960224,21080224
Если вы точно знаете, что ваши клиенты поддерживают несколько RRULE (которые были устаревшими в RFC 5545, но все же были полностью действительны в RFC 2445), вы можете добавить их и в одно событие, но я бы не рекомендовал этого.
- 1. найти третью пятницу месяца и данных таблицы
- 2. Определите третью пятницу месяца месяца и года
- 3. Как найти третью пятницу месяца в Java 8?
- 4. Простая инструкция SELECT для получения последней среды любого месяца
- 5. Powershell - Найти следующую пятницу
- 6. Получить первую или последнюю пятницу месяца в
- 7. Получить последнюю пятницу месяца в Java
- 8. MySQL: нужно рассчитать последнюю пятницу месяца
- 9. Perl: Получение последней пятницы месяца
- 10. Как определить третью пятницу месяца с использованием sas
- 11. запрос последней пятницы месяца в MySQL
- 12. «как найти следующую пятницу после добавления 2 дней к дате?»
- 13. Как найти следующую пятницу после окончания периода оплаты
- 14. Как найти следующий XTH месяца после даты
- 15. Как получить последнюю пятницу месяца (ы) с помощью .NET
- 16. Найти последнюю пятницу предыдущего месяца и проверить, сколько дней между текущей датой
- 17. Как рассчитать последнюю пятницу предыдущего месяца с текущего месяца в MySQL
- 18. SAS yyyymmdd до последней даты месяца
- 19. Найти всех детей, родившихся в пятницу
- 20. SQL Server 2008 найти следующую пятницу или в последний день месяца
- 21. найти следующую пятницу с фиксированной даты
- 22. Cron Expression: первая пятница после третьего понедельника месяца
- 23. Как найти последний день месяца?
- 24. Чтобы вытащить последнюю пятницу,
- 25. переменная среды Windows для месяца Год
- 26. Найти первую среду после последнего вторника последнего финансового месяца
- 27. TSQL Определите каждую пятницу с «семенной» даты
- 28. Получать месяц после и до месяца месяца
- 29. JQuery Datepicker триггер после изменения месяца (после месяца снимает)
- 30. Как получить дату первой среды месяца java calendar
Кто-то может исправить меня по этому поводу, но я думаю, что это не может быть выражено с помощью «RRULE». – Evert