Конструктор длительности ISO 8601

Двустороннее преобразование между длительностью естественным языком и ISO 8601 (PnYnMnDTnHnMnS) с проверкой крайних случаев

Двусторонний конвертер длительностей ISO 8601 (формат интервала «PnYnMnDTnHnMnS»), дополняющий конвертер точек даты/времени ISO 8601.

Естественный язык → ISO 8601: введите «3 years 2 months 14 days», «2.5 hours», «36 hours», «1 week 12 hours», «3天2小时» или слитные формы «2h30m» / «3days». Распознаёт английские слова, числа словами («two») и китайские цифры/единицы, выдавая каноническую строку ISO 8601.

ISO 8601 → естественный язык: вставьте P3Y2M14D, PT36H, P1W, P0.5D и т. д. — получите читаемый разбор и значения компонентов.

Проверка покрывает сложные правила ISO 8601:

  • После «T» должны идти единицы времени (H/M/S), а не даты.
  • Недели (W) нельзя сочетать с годами, месяцами или днями.
  • Десятичные дроби допускаются только в наименьшем компоненте.
  • Нужен хотя бы один компонент (одиночное P недопустимо).

Также приводится примерный итог в секундах/минутах/часах/днях (1 год ≈ 365,25 д, 1 мес ≈ 30,4375 д).

Примеры результатов

2 Примеры

Преобразовать "3 years 2 months 14 days" в ISO 8601

Длительность естественным языком в P3Y2M14D с разбивкой.

ISO 8601 duration with breakdown.
Показать параметры ввода
{ "input": "3 years 2 months 14 days", "direction": "auto" }

Разобрать длительность ISO 8601 в слова

Вставьте PT2H30M или P1WT12H — получите читаемый вид и компоненты.

ISO 8601 duration expanded into natural language.
Показать параметры ввода
{ "input": "PT2H30M", "direction": "auto" }

Ключевые факты

Категория
Разработка и Web
Типы входных данных
text, select
Тип результата
html
Покрытие примерами
4
API доступен
Yes

Обзор

Этот онлайн-инструмент обеспечивает двустороннее преобразование между длительностью на естественном языке и стандартным форматом ISO 8601 (PnYnMnDTnHnMnS), автоматически проверяя корректность интервалов и рассчитывая эквивалентное время в секундах, минутах, часах и днях.

Когда использовать

  • При проектировании API или баз данных, где требуется сохранить интервалы времени в стандартизированном формате ISO 8601.
  • Для быстрого перевода сложных строк длительности вроде "3 years 2 months 14 days" или "2h30m" в валидный формат P3Y2M14D или PT2H30M.
  • При необходимости разобрать и проверить на соответствие спецификации ISO 8601 сторонние строки интервалов с расчетом общего количества секунд.

Как это работает

  • Введите длительность в текстовое поле в виде естественного языка (например, "2.5 hours", "3 days") или в формате ISO 8601 (например, "PT2H30M").
  • Выберите направление конвертации в меню или оставьте автоматическое определение ("Auto").
  • Инструмент мгновенно проверит строку на соответствие правилам стандарта (например, запрет на смешивание недель с днями или неверное положение символа T) и выведет результат с подробным разбором компонентов.

Сценарии использования

Разработка конфигурационных файлов для планировщиков задач, где интервалы выполнения задаются в формате ISO 8601.
Локализация и перевод машиночитаемых интервалов времени в понятный для пользователей текстовый вид на веб-страницах.
Валидация пользовательского ввода интервалов времени перед отправкой данных на бэкенд.

Примеры

1. Конвертация текстового описания в формат ISO 8601

Backend-разработчик
Контекст
Разработчик настраивает периодичность отправки уведомлений в системе и хочет записать интервал "3 года 2 месяца 14 дней" в конфигурационный файл.
Проблема
Необходимо быстро получить точную и валидную строку ISO 8601 без ручного подсчета символов.
Как использовать
Введите "3 years 2 months 14 days" в поле ввода и выберите направление "Естественный язык → ISO 8601".
Пример конфигурации
{
  "input": "3 years 2 months 14 days",
  "direction": "nl2iso"
}
Результат
Получена валидная строка P3Y2M14D с подробным разбором каждого компонента.

2. Декодирование интервала ISO 8601 для интерфейса

Frontend-разработчик
Контекст
Приложение получает от API длительность сессии в формате PT36H и должно отобразить её пользователю в понятном виде.
Проблема
Требуется проверить корректность строки и перевести её в читаемый формат.
Как использовать
Вставьте "PT36H" в поле ввода и выберите направление "ISO 8601 → Естественный язык".
Пример конфигурации
{
  "input": "PT36H",
  "direction": "iso2nl"
}
Результат
Инструмент преобразует строку в понятное описание длительности и выведет эквивалент в часах и секундах.

Проверить на примерах

development

Связанные хабы

FAQ

Можно ли в формате ISO 8601 сочетать недели (W) с днями (D) или месяцами (M)?

Нет, стандарт ISO 8601 запрещает комбинировать недели с другими единицами измерения даты (Y, M, D) в одной строке.

Для чего нужен символ "T" в строке длительности?

Символ "T" отделяет компоненты даты (годы, месяцы, дни) от компонентов времени (часы, минуты, секунды).

Допускаются ли десятичные дроби в значениях?

Да, но десятичная дробь (например, P0.5D) может использоваться только для самого последнего (наименьшего) указанного компонента длительности.

Как инструмент рассчитывает общее количество секунд для месяцев и лет?

Расчет производится по стандартным календарным соглашениям: 1 год принимается равным 365,25 дня, а 1 месяц — 30,4375 дня.

Поддерживает ли конвертер русскоязычный ввод?

Инструмент распознает английские и китайские фразы, слитные сокращения вроде "2h30m", а также стандартные строки ISO 8601.

Документация API

Конечная точка запроса

POST /ru/api/tools/iso-8601-duration-builder

Параметры запроса

Имя параметра Тип Обязательно Описание
input text Да -
direction select Нет -

Формат ответа

{
  "result": "
Processed HTML content
", "error": "Error message (optional)", "message": "Notification message (optional)", "metadata": { "key": "value" } }
HTML: HTML

Документация MCP

Добавьте этот инструмент к конфигурации сервера MCP:

{
  "mcpServers": {
    "elysiatools-iso-8601-duration-builder": {
      "name": "iso-8601-duration-builder",
      "description": "Двустороннее преобразование между длительностью естественным языком и ISO 8601 (PnYnMnDTnHnMnS) с проверкой крайних случаев",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=iso-8601-duration-builder",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Вы можете объединять несколько инструментов, например: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, максимум 20 инструментов.

Если вы столкнулись с проблемами, пожалуйста, свяжитесь с нами по адресу [email protected]