Ruby bindings for jq.
see http://stedolan.github.io/jq/.
jq requires the Oniguruma library to provide regex support. To install Oniguruma for your system, please follow the instructions in the jq FAQ.
Add this line to your application's Gemfile:
gem 'ruby-jq'
And then execute:
$ bundle
Or install it yourself as:
$ gem install ruby-jq
By default, ruby-jq downloads and compiles its own version of libjq. If you
would like to use your own version of libjq, you can skip this process by
passing the --use-system-libraries flag to gem install, or by setting the
RUBYJQ_USE_SYSTEM_LIBRARIES env var.
require'jq'src=<<EOS[ "FOO", { "BAR": [100, 200] }, 1.23, [1, "2", 3]]EOSjq=JQ(src)jq.search('.[]')do |value|
pvalue# => "FOO"# => {"BAR"=>[100, 200]}# => 1.23# => [1, "2", 3]endpjq.search('.[]')# => ["FOO", {"BAR"=>[100, 200]}, 1.23, [1, "2", 3]]jq=JQ(src,parse_json: false)jq.search('.[1].BAR')do |value|
pvalue# => "[100,200]"endrequire'jq/extend'p{'FOO'=>100,'BAR'=>[200,200]}.jq('.BAR[]')# => [200, 200]['FOO',100,'BAR',[200,200]].jq('.[3][]')do |value|
pvalue# => 200end