Доброго времени суток. Есть массив . Мне нужно из него убрать все значения , кроме значений, имя которых содержит "Количество". Подскажите, пожалуйста, можно как то через поиск это организовать? Или проще удалять элементы по индексам?
МассивПодчиненныхЭлементов = Новый Массив;
Для Каждого Элемент Из Элементы.Товары.ПодчиненныеЭлементы Цикл
МассивПодчиненныхЭлементов.Добавить(Элемент);
КонецЦикла;
По теме из базы знаний
- Немного о скорости поиска в коллекциях
- Преобразование массива структур в дерево значений. Представление массива подчиненных друг другу "объектов" в иерархическом виде без использования рекурсии
- Обзор полезных методов БСП 3.1.4
- Самые используемые методы БСП 3.1.9
- Универсальная коллекция. Класс-надстройка
Найденные решения
(5)
Для Каждого Элемент Из Элементы.Товары.ПодчиненныеЭлементы Цикл
МассивПодчиненныхЭлементов.Добавить(Элемент);
КонецЦикла;
Для Индекс = 0 По 4 Цикл
МассивПодчиненныхЭлементов.Удалить(0);
КонецЦикла;
Для Индекс = 0 По 2 Цикл
МассивПодчиненныхЭлементов.Удалить(МассивПодчиненныхЭлементов.ВГраница());
КонецЦикла;
остановлюсь на этом решении. Всем спасибо за помощь!
МассивПодчиненныхЭлементов.Добавить(Элемент);
КонецЦикла;
Для Индекс = 0 По 4 Цикл
МассивПодчиненныхЭлементов.Удалить(0);
КонецЦикла;
Для Индекс = 0 По 2 Цикл
МассивПодчиненныхЭлементов.Удалить(МассивПодчиненныхЭлементов.ВГраница());
КонецЦикла;
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3)(3) понял, спасибо. А если мне надо с 0 по 4 в начале убрать, и в конце с 0 по 2 то как лучше сделать? Я вот так сделал. Подскажите, пожалуйста, оптимально ? Или есть какой более универсальный механизм?
Для Каждого Элемент Из Элементы.Товары.ПодчиненныеЭлементы Цикл
МассивПодчиненныхЭлементов.Добавить(Элемент);
КонецЦикла;
Для Индекс = 0 По 4 Цикл
МассивПодчиненныхЭлементов.Удалить(0);
КонецЦикла;
Для Индекс = 0 По 2 Цикл
МассивПодчиненныхЭлементов.Удалить(МассивПодчиненныхЭлементов.ВГраница());
КонецЦикла;
Показать
(5)
Для Каждого Элемент Из Элементы.Товары.ПодчиненныеЭлементы Цикл
МассивПодчиненныхЭлементов.Добавить(Элемент);
КонецЦикла;
Для Индекс = 0 По 4 Цикл
МассивПодчиненныхЭлементов.Удалить(0);
КонецЦикла;
Для Индекс = 0 По 2 Цикл
МассивПодчиненныхЭлементов.Удалить(МассивПодчиненныхЭлементов.ВГраница());
КонецЦикла;
остановлюсь на этом решении. Всем спасибо за помощь!
МассивПодчиненныхЭлементов.Добавить(Элемент);
КонецЦикла;
Для Индекс = 0 По 4 Цикл
МассивПодчиненныхЭлементов.Удалить(0);
КонецЦикла;
Для Индекс = 0 По 2 Цикл
МассивПодчиненныхЭлементов.Удалить(МассивПодчиненныхЭлементов.ВГраница());
КонецЦикла;
(6) в массиве я хотел бы поиском реализовать, по типу как в таблице значений поиск через построитель запроса, на "Содержит" "Количество", но я так понял, что в массиве такое провернуть невозможно. Если только по индексам добавлять в таблицу значений наименования элементов формы, потом через построитель на условие "Содержит" удалять ненужные значения, и сравнивать каждый элемент массива со значениями строк из получившейся таблицы. Но это слишком замороченно. Поэтому остановлюсь на удалении через индексы. Всем спасибо!
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот