Sha256: 61ad715fab4426439b45085d00f7dda4d42468251d90e27a1adfbb3adbb83b86

Contents?: true

Size: 1.13 KB

Versions: 1

Compression:

Stored size: 1.13 KB

Contents

= Jsonpath

This is an implementation of http://goessner.net/articles/JsonPath/. 

== Usage

  wrapper = JsonPath.wrap(JSON.parse(<<-HERE_DOC))
  {"store": 
    {"bicycle":
      {"price":19.95, "color":"red"},
      "book":[
        {"price":8.95, "category":"reference", "title":"Sayings of the Century", "author":"Nigel Rees"},
        {"price":12.99, "category":"fiction", "title":"Sword of Honour", "author":"Evelyn Waugh"},
        {"price":8.99, "category":"fiction", "isbn":"0-553-21311-3", "title":"Moby Dick", "author":"Herman Melville"},
        {"price":22.99, "category":"fiction", "isbn":"0-395-19395-8", "title":"The Lord of the Rings", "author":"J. R. R. Tolkien"}
      ]
    }
  }
  HERE_DOC
  
  wrapper.path('$..price').to_a
  => [19.95, 8.95, 12.99, 8.99, 22.99]
  
  wrapper.path('$..author').to_a
  => ["Nigel Rees", "Evelyn Waugh", "Herman Melville", "J. R. R. Tolkien"]
  
  wrapper.path('$..book[::2]').to_a
  => [{"price"=>8.95, "category"=>"reference", "author"=>"Nigel Rees", "title"=>"Sayings of the Century"}, {"price"=>8.99, "category"=>"fiction", "author"=>"Herman Melville", "title"=>"Moby Dick", "isbn"=>"0-553-21311-3"}]

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jsonpath-0.0.3 README.rdoc