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.
[[) 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 (
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
@[(range): Outputs a ranged subset of data from STDIN
[(index): Outputs an element from an array, map or table
a(mkarray): A sophisticated yet simple way to build an array or list
config: Query or define murex runtime settings
count: Count items in a map, list or array
ja(mkarray): A sophisticated yet simply way to build a JSON array
mtac: Reverse the order of an array
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 Thu May 26 22:49:43 UTC 2022 against commit 59e27bb59e27bb1013043fc4a940cf9a2767c63f31dad2c.
Current version is 2.8.2100 which has been verified against 15889 tests cases.