Каталоги поставщиков

Как выбрать материал из JSON-массива attributes

2026-06-29
Задача

В JSON характеристики товара лежат в массиве attributes: материал, цвет и другие параметры. Нужно получить отдельное поле материала.

Короткий ответ

Откройте value внутри attributes и добавьте условие по соседнему code: простой вариант — Равно material. Регулярное выражение ^material$ делает то же самое и строго проверяет полное совпадение.

Как сделать в Eofferix

  1. В JSON-снапшоте выберите value внутри повторяющегося блока.

    JSON-поле value
    Выбранное поле относится к одному повторяющемуся объекту.
  2. Откройте настройки значения.

    Открытие настроек value
    Анимация показывает открытие настроек поля.
  3. Способ 1: по соседнему code поставьте Равно material.

    Условие JSON
    Это один из вариантов настройки условия; остальные варианты добавлять не нужно.
  4. Способ 2: регулярное выражение ^material$ (находит значение, которое целиком равно material) можно оставить как строгий вариант.

    Условие JSON
    Это один из вариантов настройки условия; остальные варианты добавлять не нужно.

Было / стало

Было

исходные данные
{
    "products": [
        {
            "sku": "SKU-14001",
            "name": "Лампа Ладога",
            "attributes": [
                {
                    "code": "material",
                    "name": "Материал",
                    "value": "сталь"
                },
                {
                    "code": "color",
                    "name": "Цвет",
                    "value": "белый"
                }
            ]
        },
        {
            "sku": "SKU-14002",
            "name": "Кресло Волга",
            "attributes": [
                {
                    "code": "material",
                    "name": "Материал",
                    "value": "дерево"
                },
                {
                    "code": "color",
                    "name": "Цвет",
                    "value": "черный"
                }
            ]
        }
    ]
}

Стало

результат
{
    "products": [
        {
            "sku": "SKU-14001",
            "name": "Лампа Ладога",
            "material": "сталь"
        },
        {
            "sku": "SKU-14002",
            "name": "Кресло Волга",
            "material": "дерево"
        }
    ]
}

Обрабатывайте данные быстрее с Eofferix

Создайте бесплатный аккаунт, чтобы автоматизировать каталоги и прайс-листы под ваши правила.

Зарегистрироваться