Объединение полей: различия между версиями
Внешний вид
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| Строка 19: | Строка 19: | ||
==Использование в выражениях== | ==Использование в выражениях== | ||
==Использование во вкладке кода== | ==Использование во вкладке кода== | ||
==Код функции== | ==Код функции== | ||
Версия от 03:03, 21 октября 2026
Функция JoinFields - объединяет нескольких текстовых значений в одну строку с использованием заданного разделителя.
Примечание
В отличие от string.Join() не добавляет в итог пустые строки, строки из пробелов и т.д.
Входные параметры
separator- строка-разделитель, вставляемая между элементами;fields- массив объектов, строковые представления которых необходимо объединить.
Выходные параметры
- строка, состоящая из объединенных элементов,
- пустая строка, если подходящих элементов нет.
Алгоритм
Использование в выражениях
Использование во вкладке кода
Код функции
/// <summary>
/// Объединение нескольких текстовых значений в одну строку с использованием заданного разделителя.<br/>
/// В отличие от string.Join() не добавляет в итог пустые строки, строки из пробелов и т.д.
/// </summary>
/// <param name="separator">Строка-разделитель, вставляемая между элементами.</param>
/// <param name="fields">Массив объектов, строковые представления которых необходимо объединить.</param>
/// <returns>
/// - или строка, состоящая из объединенных элементов,
/// - или <see cref="string.Empty"/>, если подходящих элементов нет.
/// </returns>
public static string JoinFields(string separator, params object?[]? fields)
{
if (fields == null || fields.Length == 0) return string.Empty;
var list = new System.Collections.Generic.List<string>();
foreach (var f in fields)
{
if (f == null || f == DBNull.Value) continue;
var elem = f.ToString();
if (string.IsNullOrWhiteSpace(elem)) continue;
list.Add(elem.Trim());
}
return string.Join(separator, list);
}