[[ Element ]]
)Outputs an element from a nested structure
Outputs an element from an array, map or table. Unlike
index ([
), element takes
a path parameter which means it can work inside nested structures
without pipelining multiple commands together. However this comes with
the drawback that you can only return one element.
Element ([[
) also doesn’t support the
bang prefix (unlike) index.
Please note that indexes in Murex are counted from zero.
<stdin> -> [[ element ]] -> <stdout>
$variable[[ element ]] -> <stdout>
Return the 2nd element in an array:
» ja [0..9] -> [[ /1 ]]
[
"1",
]
Return the data-type and description of config shell syntax-highlighting:
» config -> [[ /shell/syntax-highlighting/Data-Type ]]
bool
Indexes in Murex behave like any other computer array in that all
arrays start from zero (0
).
Element uses the first character in the path as the separator. So the following are all valid parameters:
» config -> [[ ,shell,syntax-highlighting,Data-Type ]]
bool
» config -> [[ >shell>syntax-highlighting>Data-Type ]]
bool
» config -> [[ \|shell\|syntax-highlighting\|Data-Type ]]
bool
» config -> [[ 😅shell😅syntax-highlighting😅Data-Type ]]
bool
However there are a few of caveats:
|
, ;
,
}
, etc) will need to be escaped. For readability reasons it
is recommended not to use such characters even though it is technically
possible to.
# Would fail because the semi-colon is an unescaped / unquoted shell token
config -> [[ ;shell-syntax-highlighting;Data-Type ]]
# Would fail because 'syntax-highlighting' and 'Data-Type' both also contain
# the separator character
config -> [[ -shell-syntax-highlighting-Data-Type ]]
# Would fail because you cannot escape key names (escaping happens at the
# shell parser level rather than command parameter level)
config -> [[ -shell-syntax\-highlighting-Data\-Type ]]
In Murex, everything is a function. Thus even [[
is a
function name and the closing ]]
is actually a last
parameter. This means the recommended way to quote
element parameters is to quote specific key names or
the entire path:
» config -> [[ /shell/"syntax-highlighting"/Data-Type ]]
bool
» config -> [[ "|shell|syntax-highlighting|Data-Type" ]]
bool
[[
element
count
): Count
items in a map, list or arrayja
):
A sophisticated yet simply way to build a JSON array[ ..Range ]
: Outputs a ranged subset of data from
stdin[ Index ]
): Outputs an element from an array, map or
tablemtac
):
Reverse the order of an arrayconfig
): Query or define Murex runtime settingsa
): A
sophisticated yet simple way to stream an array or list (mkarray)This document was generated from builtins/core/element/element_doc.yaml.
This site's content is rebuilt automatically from murex's source code after each merge to the master
branch. Downloadable murex binaries are also built with the website.
Last built on Wed Jan 15 23:07:50 UTC 2025 against commit b4c4296b4c429617fd41527ea0efef33c52c15ef2b64972.
Current version is 6.4.2063 (develop) which has been verified against tests cases.