У меня есть переменная Diagnostics , имеющая значение, как показано ниже:
echo $diagnosisCodes
{"code":"some code1","codeSet":"some set1","description":"some description1"} {"code":"some code2","codeSet":"some set2","description":"some description2"} {"code":"some code3","codeSet":"some set3","description":"some description3"}
Я хочу разделить их, используя разделитель "} {"
, чтобы я получил 3 разных значения и затем сохранилих в массиве (в bash).
Я нашел решение, используя следующую команду (предложенную Incrivel Monstro Verde в комментариях):
IFS='|' read -r -a array <<< $(echo $string | sed 's/{"code/|"code/g;s/\"}/"/g')
Но это решение не сработало бы, если бы мойСтрока имеет атрибут codeSet, который стоит перед атрибутом code.