Шаблон:Анализатор даты
Анализатор даты.
{{Анализатор даты|}}
Данный шаблон получает текстовую строку с датой в произвольном формате и анализирует её, проверяя набор условий, после чего на выходе выдаёт код в виде слова, состоящего из набора символов и цифр, характеризующий совокупность свойств полученной даты. Данный шаблон предназначен для встраивания в качестве условия в функцию парсера {{#switch:, разным наборам значений которой присваиваются соответствующие коды обработки даты.
Предупреждение: шаблон обрабатывает только неформатированный простой текст. Если дата содержит викиссылки, они должны быть предварительно удалены с помощью шаблона Дата без ссылок.
Значения
Код состоит из набора значений, расположенных последовательно:
- число вначале — длина строки:
- 4 — до 4 символов
- 10 — до 10 символов
- 30 — до 30 символов (ограничение максимальной длины). Строки длиннее обозначаются как 0
- p1, p2, p3, ... , pN — количество слов, разделённых пробелом
- - — дата до нашей эры (с окончанием «до н. э.» или отрицательное число года); + — дата нашей эры с явным указанием «н. э.»
| Далее идёт ветвление обработки вариантов для одного и двух-трёх-четырёх.. слов: | |
| 1 слово | 2, 3, ... , N слова |
|---|---|
|
|
Зелёным отмечены значения, которые не отображаются, если не определены.
Примеры анализа дат
| Дата | Код шаблона | Результат |
|---|---|---|
| Обычные даты без ссылок | ||
| 2026 | {{Анализатор даты|2026}} | 4p1n.0/0 |
| 2026 год | {{Анализатор даты|2026 год}} | 10p2y2 |
| 2026 год н. э. | {{Анализатор даты|2026 год н. э.}} | 30p4+y2 |
| 2026 г. | {{Анализатор даты|2026 г.}} | 10p2y2 |
| май 2026 | {{Анализатор даты|май 2026}} | 10p2M |
| Май 2026 года | {{Анализатор даты|Май 2026 года}} | 30p3My3 |
| Лето 2026 | {{Анализатор даты|Лето 2026}} | 10p2s |
| зима 2026 года | {{Анализатор даты|зима 2026 года}} | 30p3sy3 |
| в 2026 году | {{Анализатор даты|в 2026 году}} | 30p3vy3 |
| начало 2026 года | {{Анализатор даты|начало 2026 года}} | 30p3sy3 |
| 13 мая 2026 | {{Анализатор даты|13 мая 2026}} | 30p3m |
| Конец мая 2026 | {{Анализатор даты|Конец мая 2026}} | 30p3sm |
| 13 мая 2026 года | {{Анализатор даты|13 мая 2026 года}} | 30p4my4 |
| Начало мая 2026 года | {{Анализатор даты|Начало мая 2026 года}} | 30p4smy4 |
| на 13 мая 2026 года | {{Анализатор даты|на 13 мая 2026 года}} | 30p5P |
| Обычные даты без ссылок (до нашей эры) | ||
| -2026 | {{Анализатор даты|-2026}} | 10p1-n.0/0 |
| 2026 до н. э. | {{Анализатор даты|2026 до н. э.}} | 30p4- |
| 2026 год до н. э. | {{Анализатор даты|2026 год до н. э.}} | 30p5-y2 |
| май 2026 года до н. э. | {{Анализатор даты|май 2026 года до н. э.}} | 30p6-My3 |
| в 2026 году до н. э. | {{Анализатор даты|в 2026 году до н. э.}} | 30p6-vy3 |
| 13 мая 2026 года до н. э. | {{Анализатор даты|13 мая 2026 года до н. э.}} | 30p7-my4 |
| Даты с разделителем точкой (год в конце) | ||
| 05.2026 | {{Анализатор даты|05.2026}} | 10p1n.1/0 |
| 5.2026 | {{Анализатор даты|5.2026}} | 10p1n.1/0 |
| 13.05.2026 | {{Анализатор даты|13.05.2026}} | 10p1n.2/0 |
| 13.5.2026 | {{Анализатор даты|13.5.2026}} | 10p1n.2/0 |
| 13.05.2026 до н. э. | {{Анализатор даты|13.05.2026 до н. э.}} | 30p4- |
| Даты с разделителем точкой (год вначале) | ||
| 2026.05 | {{Анализатор даты|2026.05}} | 10p1n.1/0 |
| 2026.5 | {{Анализатор даты|2026.5}} | 10p1n.1/0 |
| 2026.05.13 | {{Анализатор даты|2026.05.13}} | 10p1n.2/0 |
| 2026.5.13 | {{Анализатор даты|2026.5.13}} | 10p1n.2/0 |
| Даты в формате ISO | ||
| 2026-05 | {{Анализатор даты|2026-05}} | 10p1n.0/0iso |
| 2026-05-13 | {{Анализатор даты|2026-05-13}} | 10p1n.0/0iso |
| 2026-05-13T05:31 | {{Анализатор даты|2026-05-13T05:31}} | 30p1.0/0iso |
| Неопределённое и пустое значение | ||
| ? | {{Анализатор даты|?}} | 4p1.0/0? |
{{Анализатор даты|}} | ||
| Данный шаблон был разработан специально для Циклопедии. |