Разделить версию.
Функция РазделитьВерсию(Знач ВерсияСтрокой, Разделитель = ".", ЛюбаяВерсия = "*") Экспорт
ВерсияСтрокой = ?(ПустаяСтрока(ВерсияСтрокой), ЛюбаяВерсия + Разделитель + ЛюбаяВерсия + Разделитель + ЛюбаяВерсия + Разделитель + ЛюбаяВерсия, ВерсияСтрокой);
Состав = СтрРазделить(СтрЗаменить(ВерсияСтрокой, " ", ""), Разделитель, Ложь);
ФорматСоблюден = Состав.Количество() = 4;
Если ФорматСоблюден Тогда
Попытка
Редакция = ?(СтрНайти(Состав[0], ЛюбаяВерсия), Неопределено, Число(Состав[0]));
Подредакция = ?(СтрНайти(Состав[1], ЛюбаяВерсия), Неопределено, Число(Состав[1]));
Версия = ?(СтрНайти(Состав[2], ЛюбаяВерсия), Неопределено, Число(Состав[2]));
Сборка = ?(СтрНайти(Состав[3], ЛюбаяВерсия), Неопределено, Число(Состав[3]));
ФорматСоблюден = (Редакция = Неопределено ИЛИ Редакция >= 0)
И (Подредакция = Неопределено ИЛИ Подредакция >= 0)
И (Версия = Неопределено ИЛИ Версия >= 0)
И (Сборка = Неопределено ИЛИ Сборка >= 0);
Исключение
ФорматСоблюден = Ложь;
КонецПопытки;
КонецЕсли;
Если НЕ ФорматСоблюден Тогда
Описание = НСтр("ru = 'Версия """"%1"""" не соответствует формату Редакция.Подредакция.Версия.Сборка.'");
Описание = СтрЗаменить(Описание, "%1", ВерсияСтрокой);
ВызватьИсключение Описание;
КонецЕсли;
Возврат Новый Структура("Редакция, Подредакция, Версия, Сборка", Редакция, Подредакция, Версия, Сборка);
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
НеотображавшиесяРазделыОписанияИзменений (БСП)
Фильтр по главам справки открывает неправильный раздел в 8.3.27
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)