Выберите атрибут JSON на основе других элементов в массиве, используя JSONPath - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть образец JSON массива:

{
"data": {
    "list": [
        {
            "id": 192,
            "name": "John Black",
            "username": "jblack",
            "email": "jblack@myorganization.com",
            "extern_uid": "user distinguished name"
        },
        {
            "id": 63,
            "name": "Jane Doe",
            "username": "jadoe",
            "email": "jadoe@myorganization.com",
            "extern_uid": "user distinguished name"
        }
    ]
}}

Я хочу извлечь атрибут на основе другого атрибута, используя выражение JSONPath,

Например:

Я хочу найти имя «Джейн Доу» и извлечь значения из массива Джейн Доу, например id: 63 или любое другое значение в массиве Джейн Доу. Возможно ли это в JSONPath? Я не эксперт в JSONPath, поэтому я прошу прощения, если это может показаться банальным для других

Спасибо всем

1 Ответ

0 голосов
/ 14 февраля 2020

нашел решение:

$. Data.list [? (@. Username == "jblack")]. Id

Вернет:

"id ": 192

...