Задача
В JSON значение признака приходит строкой: yes, ye, y, no, n, 1 или 0. В итоговом JSON нужны значения true и false.
Короткий ответ
Для небольшого набора значений добавьте последовательные замены: y, yes, ye и 1 заменить на true; n, no и 0 заменить на false. Если вариантов больше, используйте regex-правила.
Как сделать в Eofferix через последовательные преобразования
- В JSON-редакторе откройте настройки значения
active.
Красной рамкой выделено значение active, по которому открываются настройки узла. - В блоке Преобразования добавьте правила: Текущее значение равно
y,yes,yeи1; действие в каждом правиле — Заменить наtrue. - Добавьте правила для отрицательных значений: Текущее значение равно
n,noи0; действие в каждом правиле — Заменить наfalse.
В настройках active показаны отдельные правила: каждое исходное значение заменяется на true или false. - Сохраните настройки значения.
Как сделать в Eofferix через регулярные выражения
- Вместо нескольких отдельных правил можно оставить те же настройки значения
activeи добавить два regex-правила. - Первое правило: условие Регулярное выражение, значение
^(yes|ye|y|1)$, действие Заменить на, результатtrue. - Второе правило: условие Регулярное выражение, значение
^(no|n|0)$, действие Заменить на, результатfalse.
В настройках active два regex-правила заменяют положительные значения на true, отрицательные на false. - Сохраните настройки значения.
Было / стало
Было
исходные данные[
{
"sku": "SKU-1001",
"active": "y"
},
{
"sku": "SKU-1002",
"active": "0"
}
]Стало
результат[
{
"sku": "SKU-1001",
"active": true
},
{
"sku": "SKU-1002",
"active": false
}
]