Строка числом для любого языка. Формирует представление числа для определенного языка и параметров числа.
// Формирует представление числа для определенного языка и параметров числа.
// Представление параметров:
// ┌──────┬──────┬─────────────────┬────────────────┬───────────────────┬───────────────────────┬────────────────┐
// │ Lang │ Zero │ One │ Two │ Few │ Many │ Other │
// ├──────┼──────┼─────────────────┼────────────────┼───────────────────┼───────────────────────┼────────────────┤
// │ ru │ │ XX1 / X11 │ │ XX2─XX4 / X12─X14 │ XX0, XX5─XX9, X11─X14 │ дробные │
// │ Card.│ │ остался %1 день │ │ осталось %1 дня │ осталось %1 дней │ осталось %1 дня│
// │ │ │ вижу %1 рыбу │ │ вижу %1─х рыб │ вижу %5 рыб │ вижу %1 рыбы │
// ├──────┼──────┼─────────────────┼────────────────┼───────────────────┼───────────────────────┼────────────────┤
// │ ru │ │ │ │ │ │ других нет │
// │ Ord. │ │ │ │ │ │ %1─й день │
// ├──────┼──────┼─────────────────┼────────────────┼───────────────────┼───────────────────────┼────────────────┤
// │ en │ │ для 1 │ │ │ │ остальное │
// │ Card.│ │ left %1 day │ │ │ │ left %1 days │
// ├──────┼──────┼─────────────────┼────────────────┼───────────────────┼───────────────────────┼────────────────┤
// │ en │ │ XX1 / X11 │ XX2 / X12 │ XX3 / X13 │ │ остальное │
// │ Ord. │ │ %1st day │ %1nd day │ %1rd day │ │ %1th day. │
// └──────┴──────┴─────────────────┴────────────────┴───────────────────┴───────────────────────┴────────────────┘
// ┌──────┬───────────────────────────┐
// │Card. │ Cardinal ─ Количественное;│
// │ Ord. │ Ordinal - Порядковое; │
// ├──────┼───────────────────────────┤
// │ X │ любая цифра; │
// │ / │ кроме. │
// └──────┴───────────────────────────┘
//
// Параметры:
// Шаблон - Строка - строка, содержит перечисленные через точку с запятой 6 форм строки
// для каждой категории числительного:
// - %1 обозначает позицию числа;
// Число - Число - число, которое будет подставлено в строку вместо параметра "%1".
// Вид - ВидЧисловогоЗначения - определяет вид числового значения, для которого формируется представление.
// - Количественное (по умолчанию) или Порядковое.
// ФорматнаяСтрока - Строка - строка параметров форматирования. См. аналогичный параметр в СтрокаСЧислом.
//
// Возвращаемое значение:
// Строка - представление строки числа в требуемой форме.
//
// Пример:
//
// Строка = СтроковыеФункцииКлиентСервер.СтрокаСЧисломДляЛюбогоЯзыка(
// НСтр("ru=';остался %1 день;;осталось %1 дня;осталось %1 дней;осталось %1 дня';
// |en=';left %1 day;;;;left %1 days'"),
// 0.05,, "ЧДЦ=1");
//
Функция СтрокаСЧисломДляЛюбогоЯзыка(Шаблон, Число, Вид = Неопределено, ФорматнаяСтрока = Неопределено) Экспорт
Если ПустаяСтрока(Шаблон) Тогда
Возврат Формат(Число, ФорматнаяСтрока);
КонецЕсли;
Если Вид = Неопределено Тогда
Вид = ВидЧисловогоЗначения.Количественное;
КонецЕсли;
Возврат СтрокаСЧислом(Шаблон, Число, Вид, ФорматнаяСтрока);
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ПослеВводаСтрокНаРазныхЯзыках (БСП)
ПодставитьПараметрыВСтрокуИзМассива (БСП)