На этой странице описаны форматы даты/времени, которые понимает блок.
Используемые слова и символы:
- Дата и/или время: 2022-01-13 04:00
- Целые числа
- День недели: sunday, monday, tuesday, wednesday, thursday, friday, saturday, sun, mon, tue, wed, thu, fri, sat
- Порядковые числительные: first, second, third, fourth, fifth, sixth, seventh, eighth, ninth, tenth, eleventh, twelfth
- Указатели: this, next, last, previous
- Интервалы: sec, second, min, minute, hour, day, fortnight, forthnight, month, year secs, seconds, mins, minutes, hours, days, fortnights, forthnights, months, years weeks, weekday, weekdays
Нотации, основанные на днях:
Формат | Описание | Примеры |
---|---|---|
yesterday | Полночь вчера | «yesterday 14:00» |
midnight | Время устанавливается в 00:00:00 | |
today | Время устанавливается в 00:00:00 | |
now | Текущее время | |
noon | Время устанавливается в 12:00:00 | «yesterday noon» |
tomorrow | Полночь завтра | |
back of | 15 минут заданного часа | «back of 7pm», «back of 15» |
front of | Без 15 минут заданный час | «front of 5am», «front of 23» |
first day of | Устанавливает первый день текущего месяца. Обычно эту нотацию лучше использовать вместе с названием месяца, следующим за ней, иначе будет учитываться текущий месяц. | «first day of January 2008» |
last day of | Устанавливает последний день текущего месяца. Обычно эту нотацию лучше использовать вместе с названием месяца, следующим за ней, иначе будет учитываться текущий месяц. | «last day of next month» |
[Порядковое числительное] [День недели] of | Вычисляет x день недели текущего или заданного месяца. | «first sat of July 2008» |
last [День недели] of | Вычисляет последний день недели текущего или заданного месяца. | «last sat of July 2008» |
[Целое число] [Интервал] | Вычисляет относительное время при использовании числовых значений периода. | «+5 weeks», «12 day» |
[Порядковое числительное] [Интервал] | Вычисляет относительное время при использовании строковых значений периода. | «fifth day», «second month» |
ago | Вычитает все значения из последнего полученного момента времени. | «2 days ago», «8 days ago 14:00», «2 months 5 days ago», «2 months ago 5 days», «2 days ago ago» |
[День недели] | Перемещается на следующий день указанного дня недели. (Смотрите замечание) | «Monday» |
[Указатель] week | Разбирает специфичный формат «weekday + last/this/next week». | «Monday next week» |
Комментарии
- Относительные выражения всегда обрабатываются после не являющихся относительными. Например, «+1 week july 2008» эквивалентно «july 2008 +1 week». Исключением этого правила являются: «yesterday», «midnight», «today», «noon» и «tomorrow». Записи «tomorrow 11:00» и «11:00 tomorrow» отличаются. Если принять сегодняшнюю дату за «July 23rd, 2008», то первая запись возвращает «2008-07-24 11:00», а вторая «2008-07-24 00:00». Причина такого поведения в том, что эти пять выражений влияют непосредственно на время.
- Следует обратить внимание на приведённые ниже замечания относительно текущего дня недели и дня недели, указанного в строке даты/времени. Текущий день недели может быть вычислен из независимой части строки даты/времени.
- [День недели] не сдвигает дату на другой день. (Например: «Wed July 23rd, 2008» означает «2008-07-23»).
- [Целое число] [День недели] не сдвигает дату на другой день. (Например: «1 wednesday july 23rd, 2008» означает «2008-07-23»).
- [Целое число] week [День недели] добавляет соответствующее число недель, но не сдвигает дату на другой день. В этом случае имеют место два различных блока [Целое число] week и [День недели]. (Например: «+1 week wednesday july 23rd, 2008» означает «2008-07-30»).
- [Указатель] [День недели] сдвигает дату на другой день. (Например: «last wednesday july 23rd, 2008» означает «2008-07-30»).
- [Целое число] week [Указатель] [День недели] добавляет соответствующее число недель, а после сдвигает дату на другой день. В этом случае имеют место два различных блока [Целое число] week и [Указатель] [День недели]. (Например: «+1 week first wednesday july 23rd, 2008» означает «2008-08-06»).
- [Указатель] [День недели] of » не сдвигает дату на другой день. (Например: «first wednesday of july 23rd, 2008» означает «2008-07-02», потому как определённые фразы с ‘of’ сбрасывают день месяца на ‘1’ и в этом случае игнорируется ’23rd’).
- Относительные значения в месяцах рассчитываются исходя из их продолжительности. Например, из «+2 month 2011-11-30» получится «2012-01-30». Это связано с тем, что ноябрь состоит из 30 дней, а декабрь из 31 дня, что составляет 61 дней.