0
我正在使用JSON Path parser解析某些數據。這裏是源數據的一個例子:使用第一個對象的值在第二個對象中查找對應的值
{
"people": [
{
"initials": "RF",
"sport": "T"
},
{
"initials": "LM",
"sport": "F"
}
],
"definitions": {
"RF": {
"def_1": "Roger Federer",
"def_2": "Roger"
},
"LM": {
"def_1": "Lionel Messi",
"def_2": "Lionel"
},
"T": {
"def_1": "Tennis"
},
"F": {
"def_1": "Football"
}
}
}
現在,如果我只使用數組(people
),這幾乎是無用的,RF
和T
沒有多大的意義。但是,在對象(definitions
)中定義了它們。 RF
意味着Roger Federer
和T
是Tennis
,所以我需要導入這兩個。我可以輕鬆導入RF
和T
,但我正在努力尋找連接RF
和T
到Roger Federer
和Tennis
的查詢。
首先,我需要指定上下文(根),然後指定對象的名稱。下面是一個例子:
Context: $.[]
Query: initials
Result is: RF
當我導入所有的這在一個節點,本實施例能很好地導入陣列(people
)數據。
這是我能成功,現在導入:
Field1 value: RF
Field2 value: T
我需要什麼:
Field1 value: RF
Field2 value: T
**Field4 value: Roger Federer**
**Field5 value: Tennis**
基本上,我想更好地描述我從people
陣列獲得。這是我嘗試過的組合之一,但它不起作用:
Context: $.[]
Query: initials.def_1
Query: people.initials.def_1
有沒有辦法實現這一點?
啊,羅傑說。我在你的問題中添加了一個xpath標籤來幫助XPath專家發現它。 –
謝謝你的回答。我使用的是XPath,因爲我使用的CMS(Drupal)有一個很好的模塊,它利用XPath並定期分析特定URL中的數據。由於它使得整個集成比自定義解決方案更容易,所以如果有可能,我寧願使用XPath。 – take2