A1sCodeбиблиотека 1С

A1sS.Join

Enhanced string concatenation (join) with validation, error handling, and advanced options.

Скачать A1sS.bsl →

Сигнатура


Function Join(Arr,
    Prefix = "",
    Suffix = "",
    Delimiter = ",",
    Options = Undefined,
    ConfigPerformanceLog = False,
    ConfigDebugMode = False)

Как работает

  • Элементы соединяются указанным разделителем (Delim/Delimiter).
  • Опционально добавляются Prefix/Suffix к результату, если он непустой.
  • Можно нормализовать/обрезать пробелы у элементов перед объединением.

Параметры

  • Arr — Source array (Array or FixedArray) to join.
  • Prefix — Prefix for each part (String, опционально: True).
  • Suffix — Suffix for each part (String, опционально: True).
  • Delimiter — Delimiter between parts (String, по умолчанию: ,, опционально: True).
  • Options — Advanced joining options (Structure, опционально: True).

Возврат

Возвращает: Строка.

Примеры (по нарастающей)

1) Базово

Список = Новый Массив; Список.Добавить("R"); Список.Добавить("G"); Список.Добавить("B");
A1sS.Join(Список, ", ");
// "R, G, B"
2) Форматирование чисел/дат через AsString

Опции = Новый Структура("NumberFormat,DateFormat", "ЧГ=0; ЧД=2; N=,; T= ", "ДФ=dd.MM.yyyy");
Даты = Новый Массив; Даты.Добавить('2025-08-10'); Даты.Добавить('2025-08-12');
A1sS.Join(Даты, " | ", Опции);
// "10.08.2025 | 12.08.2025"
3) Префикс/суффикс

A1sS.Join(Список, ", ", Неопределено, "Цвета: ", ".");
// "Цвета: R, G, B."

Нюансы

  • Если элементы сложные (структуры, таблицы), преобразуйте их заранее в строку (или задайте соответствующие настройки для AsString).
  • Проверяйте разделитель: избыточные пробелы можно нормализовать через NormalizeWhitespace.

Рядом

  • A1sS.Split — обратная операция.
  • A1sS.AsString — приведение к строке с форматированием.