jq
中的以下两个表达式之间是否存在差异?表达式1
match("prefix.*if you do";"gmi")
表达式2
match(["prefix.*if you do","gmi"])
首饰
他们都返回了预期的数据:
{
"caveats": "The command has been installed with the prefix \"g\".\nIf you do not want the prefix, install using the \"with-default-names\"\noption.\n"
}
删除不区分大小写( i
)标记或两个表达式上的多行标记( m
)将导致比赛失败。
根据手册使用[regex,flags]
或 regex;flags
语法:
The jq regex filters are defined so that they can be used using one of these patterns: STRING | FILTER( REGEX )
STRING | FILTER( REGEX; FLAGS )
STRING | FILTER( [REGEX] )
STRING | FILTER( [REGEX, FLAGS] )
在方括号内的版本之间混合;
和,
会导致意外结果。
从技术上讲,一切都表现得像预期的那样。
但由于我的例子简单,这些结果是否具有间接性?
具体做法是:
答案 0 :(得分:0)
有一段时间jq不支持多个arity功能。我相信你描述的二元性是那些日子的遗产。任何差异都是值得报道的错误。
(也许有些人养成了输入[x,y]
而不是x;y
而更喜欢前者的习惯?