Difference between revisions of "jq json parser notes"

From thelinuxwiki
Jump to: navigation, search
(Created page with " ==Regular expressions== test(val), test(regex; flags) Like match, but does not return match objects, only true or false for whether or not the regex matches the input exam...")
 
 
(2 intermediate revisions by one user not shown)
Line 1: Line 1:
 +
==jq manual==
 +
[https://stedolan.github.io/jq/manual/ jq Manual (development version)]
 +
 +
select
 +
 +
file...
 +
 +
{
 +
"json": {
 +
  "table": [
 +
    {
 +
      "name": "foo",
 +
      "color": "green"
 +
    },
 +
    {
 +
      "name": "bar",
 +
      "color": "blue"
 +
    }
 +
    ]
 +
  }
 +
}
 +
 +
 +
$ '''cat json.json | jq '.json.table[] | select (.name == "foo")''''
 +
{
 +
"name": "foo",
 +
"color": "green"
 +
}
 +
  
 
==Regular expressions==
 
==Regular expressions==

Latest revision as of 16:41, 14 June 2025

jq manual

jq Manual (development version)

select

file...

{
"json": {
  "table": [
    {
      "name": "foo",
      "color": "green"
    },
    {
      "name": "bar",
      "color": "blue"
    }
   ]
 }
}


$ cat json.json | jq '.json.table[] | select (.name == "foo")'
{
"name": "foo",
"color": "green"
}


Regular expressions

test(val), test(regex; flags)

Like match, but does not return match objects, only true or false for whether or not the regex matches the input

example:

$cat .tmp.json | jq '"HAHAHA 123" | test("hahaha.*[0-9]{3}"; "i")'
true