- Вам выдается ответ в формате JSON Для его разбора проще будет использовать скри, allez (ok), 11:49 , 09-Фев-16 (1)
> Прошу подсказать регулярное выражение, которое подошло-бы для моих целей. > Сколько не пытался разобраться с регуляркой, так мне и не пошло. > Ситуация следующая - есть текст (ответ АПИ, полученый через curl): > [{"id":434648634,"name":"vasya","distribution":"petya","blabla":null},{"id":63484684,"name":"maks","distribution":"anton","blabla":null}] > Мне требуется получить ID, который пренадлежит Васе. > Очень надеюсь на вашу помощь!Вам выдается ответ в формате JSON. Для его разбора проще будет использовать скрипт на Perl, Python или любом другом языке, в котором есть подключаемая библиотека для работы с JSON. Ну, или искать по запросу вида "json parsing bash regular expression". :-)
- Эээ А на mips64 ассемблере не набросать JSON-парсер echo id 43464863, Andrey Mitrofanov (?), 11:54 , 09-Фев-16 (2) +1
>регулярное выражение,Эээ?? А на mips64 ассемблере не набросать JSON-парсер?... > Ситуация следующая - есть текст (ответ АПИ, полученый через curl): > [{"id":434648634,"name":"vasya","distribution":"petya","blabla":null},{"id":63484684,"name":"maks","distribution":"anton","blabla":null}] > Мне требуется получить ID, который пренадлежит Васе. > Очень надеюсь на вашу помощь! $ echo '[{"id":434648634,"name":"vasya","distribution":"petya","blabla":null},{"id":63484684,"name":"maks","distribution":"anton","blabla":null}]' \ > |jq '.[]|select(.name=="vasya").id' 434648634 $ _
- Правильно, конечно, разбирать json Но можно использовать следующий скрипт на per, f2404 (?), 18:19 , 09-Фев-16 (3) –1
> Прошу подсказать регулярное выражение, которое подошло-бы для моих целей. > Сколько не пытался разобраться с регуляркой, так мне и не пошло. > Ситуация следующая - есть текст (ответ АПИ, полученый через curl): > [{"id":434648634,"name":"vasya","distribution":"petya","blabla":null},{"id":63484684,"name":"maks","distribution":"anton","blabla":null}] > Мне требуется получить ID, который пренадлежит Васе. > Очень надеюсь на вашу помощь!Правильно, конечно, разбирать json. Но можно использовать следующий скрипт на perl: #!/usr/bin/perl
my $user = "vasya"; my $line = '[{"id":434648634,"name":"vasya","distribution":"petya","blabla":null},{"id":63484684,"name":"maks","distribution":"anton","blabla":null}]'; if ($line =~ /\"id\":(\d+),\"name\":\"$user\"/) { my $ret = $1; print "$ret\n"; }
- Что Освоил форматирование выхлопа по столбцам Взялся за джейсоны и эксмээльки , Pahanivo (ok), 23:19 , 09-Фев-16 (4) +1
Что? Освоил форматирование выхлопа по столбцам? Взялся за джейсоны и эксмээльки? ))
- Товарищи, а возможно все-же сделать на Шелле Баше, без сторонних программ или ск, Tendro (?), 10:43 , 10-Фев-16 (6)
Товарищи, а возможно все-же сделать на Шелле/Баше, без сторонних программ или скриптов?
- Ладно, не важно, сам что-то придумаю , Tendro (?), 12:21 , 10-Фев-16 (10)
Ладно, не важно, сам что-то придумаю.
- Итак, внимание Невероятный Сложный Тяжелый Неповторимый скрипт Всего на три, Tendro (?), 14:19 , 10-Фев-16 (12)
Итак, внимание! Невероятный! Сложный! Тяжелый! Неповторимый скрипт! Всего на три простых действия...echo "$string" | sed 's/{/\n\r/g' | grep 'vasya' | sed 's/^.*"id"://; s/,.*$//' Вот реально, объясните мне, глупому, зачем велосипеды в виде скриптов, перла и левого софта? Ну и самое главное - объясните почему-же подобные "парсеры сложного формата на шеле" "делать _этого_ не нужно ни-ког-да"?
|