2013-11-28 3 views
0

У меня есть JSon структуру, как это:улей JSON регулярное выражение

{ 
    "filings": { 
     "All Reports": {}, 
     "Statement Of Income Alternative": { 
       lieItem1 : [], 
       lineItem2 : []  
     }, 
     "Statement Of Financial Position Classified (Parenthetical)": {}, 
     "Statement Of Financial Position Classified": {}, 
     "Statement Of Shareholders Equity And Other Comprehensive Income": {}, 
     "Entity Information": {}, 
     "Statement Of Cash Flows Indirect": {}, 
     "Document Information": {}, 
     "Notes to Financial Statements": {} 
    } 
} 

Я делаю запрос по этому Struture в улье с помощью get_json_object:

get_json_object(table.json,'$.filings.Statement Of Income Alternative.lineItem1') 

точное значение термина Statement Of Income Alternative является не известно заранее, так что можно использовать регулярное выражение на этом, я пробовал это:

get_json_object(table.json,'$.filings.* Income Alternative*.lineItem1') 

retur n пустых результатов. Если эта структура не позволяет мне делать это какие-либо другие предложения?

+0

У вас есть контроль того, что содержит JSON? Легким способом было бы иметь поле, содержащее точное название «Statement of Income Alternative». –

+0

lineItem [] содержит объект json, поэтому я могу добавить это значение там, а затем использовать его там, где это условие, но это будет много повторений одного и того же значения: «Заявление о доходах альтернатива» – nothing

+0

Ну, скажем так, ваши json-ключи вполне сложный, и я не уверен, что вам это действительно нужно. Весь смысл проектирования самого json заключается в том, чтобы быть уверенным в структуре, которая у него будет (и не будет иметь названия клавиш, которые меняются). Возможно, вы можете найти общее имя, которое всегда применяется? –

ответ

0

У вас есть опечатка: JSON показывает lieItem1 но ваше выражение использует lineItem1

Смежные вопросы