Json отформатировал объект в простой массив с новым ключом

Просто поместите выражение для расширения в группу, запишите его и укажите совпадение в замене:

re.sub(r'(?:_a)?(\.[^\.]*)$' , r'_suff\1',"long.file.name.jpg")

Кроме того, использование группы, не содержащей захвата (?:…), предотвратит повторную запись к большой ненужной информации.

0
задан Mr world wide 19 March 2019 в 06:04
поделиться

3 ответа

Предполагая, что вам нужен массив объектов для вашего вывода, вы можете .map Object.entries вашего ввода:

const obj = {
  "ABC":{"minValue":0,"maxValue":5},
  "XYZ":{"minValue":0,"maxValue":5},
  "PQR":{"minValue":0,"maxValue":5},
  "overall":{"minValue":0,"maxValue":5}
};
const arr = Object.entries(obj).map(([type, { minValue, maxValue }]) => ({
  type,
  minValue,
  maxValue
}));
console.log(arr);
[116 ]
0
ответ дан CertainPerformance 19 March 2019 в 06:04
поделиться

Вы можете использовать Object.entries , map и синтаксис расширения следующим образом:

[ 110]

0
ответ дан adiga 19 March 2019 в 06:04
поделиться

Вы можете использовать Object.entries() и .map(), чтобы получить массив объектов:

const data = {
  "ABC": {"minValue": 0,"maxValue": 5},
  "XYZ": {"minValue": 0,"maxValue": 5},
  "PQR": {"minValue": 0,"maxValue": 5},
  "overall": {"minValue": 0,"maxValue": 5}
};

const result = Object.entries(data)
                     .map(([ k, v ]) => Object.assign({}, {type: k},  v));
                     
console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }

0
ответ дан Mohammad Usman 19 March 2019 в 06:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: