2017-07-20 3 views
0

Besoin d'une expression de chemin JSON pour ci-dessous JSON. Je voulais extraire "Id" pour chaque "nom" spécifiqueBesoin d'une expression de chemin json pour ci-dessous json

Par exemple: J'ai besoin d'extraire "Id": "3" pour "nom": "XYZ".

J'ai essayé une expression de chemin JSON comme $ .. Id dont la sortie donnée par:

[ 
    "1", 
    "2", 
    "3" 
] 

Mais il me fallait un identifiant spécifique "name": "XYZ" `

[ 
    { 
     "primary":{ 
     "name":"ABC" 
     }, 
     "Id":"1" 
    }, 
    { 
     "primary":{ 
     "name":"PQR" 
     }, 
     "Id":"2" 
    }, 
    { 
     "primary":{ 
     "name":"XYZ" 
     }, 
     "Id":"3" 
    } 
] 
+0

question très similaire https://stackoverflow.com/q/45173767/569662 –

+0

Merci .. Je suis capable de résoudre ceci .. ceci peut être résolu par l'expression ci-dessous. $ .. [? (@. Primary.name == 'XYZ')]. Id – Shrikant

Répondre

1

Capable pour résoudre ce problème en dessous de l'expression

$..[?(@.primary.name == 'XYZ')].Id 
+0

Je n'ai pas pu faire ce travail ici https://jsonpath.curiousconcept.com/ –

+0

Je suis capable d'effectuer cette avec succès ici .. https://jsonpath.herokuapp.com/ – Shrikant

+0

Le lien que j'utilisais n'utilisait pas l'implémentation Jayway de jsonpath. Je leur ai demandé de le soutenir –