парсинг json два вида данных

cooki

Client
Регистрация
05.10.2014
Сообщения
176
Благодарностей
42
Баллы
28
ломаю голову, есть данные вида

"id":"123456","Online":"true","state":"NY"
"id":"1234567","Online":"false","state":"NZ"
"id":"12345678","Online":"false","state":"NA"
"id":"123456789","Online":"true","state":"NA"

как можно взять отсюда id только с online "true"? чтобы получить на выходе список

123456
123456789

регуляркой не смог, очень много данных, это пример
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 788
Благодарностей
1 952
Баллы
113

cooki

Client
Регистрация
05.10.2014
Сообщения
176
Благодарностей
42
Баллы
28
используйте кубик обработки JSON
Посмотреть вложение 88872

посмотрите примеры работы с ним в справке.
я разобрался, как парсить значение ID либо Online, но чтобы их вместе сделать не выходит

$..id

но как добавить, чтобы рядом с ним был статуc online? сразу два спарсить
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 788
Благодарностей
1 952
Баллы
113
используйте парсинг джейсон, а не через регулярки работайте. там тоже есть возможность выборки по xpath.
 

cooki

Client
Регистрация
05.10.2014
Сообщения
176
Благодарностей
42
Баллы
28
используйте парсинг джейсон, а не через регулярки работайте. там тоже есть возможность выборки по xpath.
выше пост про json, но надо свести вместе ид и онлайн
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 820
Баллы
113
Если предположить, что JSON имеет такой вид:
JSON:
[
  {
    "id": "123456",
    "Online": "true",
    "state": "NY"
  },
  {
    "id": "1234567",
    "Online": "false",
    "state": "NZ"
  },
  {
    "id": "12345678",
    "Online": "false",
    "state": "NA"
  },
  {
    "id": "123456789",
    "Online": "true",
    "state": "NA"
  }
]

То JSONPath будет выглядеть так - $..[?(@.Online=='true')].id
 
  • Спасибо
Реакции: Koqpe, cooki и trecho

cooki

Client
Регистрация
05.10.2014
Сообщения
176
Благодарностей
42
Баллы
28
Если предположить, что JSON имеет такой вид:
JSON:
[
  {
    "id": "123456",
    "Online": "true",
    "state": "NY"
  },
  {
    "id": "1234567",
    "Online": "false",
    "state": "NZ"
  },
  {
    "id": "12345678",
    "Online": "false",
    "state": "NA"
  },
  {
    "id": "123456789",
    "Online": "true",
    "state": "NA"
  }
]

То JSONPath будет выглядеть так - $..[?(@.Online=='true')].id
не работает по итогу
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)