
Функціональний блок STR2DT перетворює будь-яку дату, вказану у текстовому форматі англійською мовою, на нову дату.
На вході передається дата та час у форматі DT#.
Визначає рядок символів для обчислення дати.
На вході можна визначити дату до 1970. Для цього використовується формат, як "12/25/0000", що відповідає першому Різдву. При цьому перше число 12 — це місяць, а друге 25 — день. Рік має бути введений чотиризначно, інакше буде прийнято значення року 2000.
| Опис | Формат |
|---|---|
| Назва дня | 'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat' |
| Дні тижня | 'weekday' | 'weekdays' |
| Число | [+-]?[0-9]+ |
| Порядкові числівники | 'first' | 'second' | 'third' | 'fourth' | 'fifth' | 'sixth' | 'seventh' | 'eighth' | 'ninth' | 'tenth' | 'eleventh' | 'twelfth' | 'next' | 'last' | 'previous' | 'this' |
| Відносні тексти | 'next' | 'last' | 'previous' | 'this' |
| Пробіли | [ \t]+ |
| Одиниці виміру | (('sec' | 'second' | 'min' | 'minute' | 'hour' | 'day' | 'fortnight' | 'forthnight' | 'month' | 'year') 's'?) | 'weeks' | daytext |
| Формат | Опис | Приклади |
|---|---|---|
| 'yesterday' | Північ минулого дня. | "yesterday 14:00" |
| 'midnight' | Час встановлюється на 00:00:00. | |
| 'today' | Час встановлюється на 00:00:00. | |
| 'now' | Ігнорується. | |
| 'noon' | Час встановлюється на 12:00:00. | "yesterday noon" |
| 'tomorrow' | Північ наступного дня. | |
| 'back of' hour | 15 хвилин пізніше від певної години. | "back of 7pm", "back of 15" |
| 'front of' hour | 15 хвилин раніше від певної години. | "front of 5am", "front of 23" |
| 'first day of' | Встановлює день на перший день місяця поточного місяця. Це також працює з вказаним місяцем і роком. | "first day of January 2008" |
| 'last day of' | Встановлює день на останній день місяця поточного місяця. Це також працює з вказаним місяцем і роком. | "last day of next month" |
| ordinal space dayname space 'of' | Обчислює x-й день тижня в місяці. | "first sat of July 2008" |
| 'last' space dayname space 'of' | Обчислює останній день тижня в місяці. | "last sat of July 2008" |
| number space? (unit | 'week') | Обчислює відносний зсув щодо поточної дати. | "+5 weeks", "12 day", "-7 weekdays" |
| ordinal space unit | Обчислює відносний час до вказаної одиниці. | "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" |
| dayname | Переходить до наступного дня тижня. | "Monday" |
| reltext space 'week' | Обчислює спеціальний формат "weekday + last/this/next week". | "Monday next week" |
Повертає обчислену дату та час у форматі DT#.
У разі помилки вихід є істинним.