问题标签 [parameter-expansion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
134 浏览

bash - 语句 f2=${f%????} 是什么意思?

我试图理解表达式f2=${f%????}在 bash 脚本中的含义。

我尝试在网上搜索一些参考资料,但没有找到有用的东西。

我正在使用的代码是:

0 投票
1 回答
35 浏览

bash - bash 中 ${...} 构造(用于字符串和数组)的名称?

Bash 允许使用${#string}(字符串长度)或${array[10]}(索引数组)之类的东西。还有比上述更多的形式,例如用于修剪、替换、更改大小写等的形式。

我一直无法为这些找到合适的名称。我看到消息来源将这些称为“字符串操作”或“数组操作”,但我找不到使用这些名称的任何官方来源。

手册似乎完全避免命名这些结构。

有谁知道这类结构的名称?(${....}用于操作字符串和数组的形式。)或者至少是我可以谷歌的非官方名称?

0 投票
0 回答
46 浏览

bash - ${VAR_NAME+x} 在 bash/shell 中是什么意思?

我有一个表达式-z ${VAR_NAME+x},我知道它会检查是否${VAR_NAME+x}为空字符串。但我不知道拥有+x.

0 投票
1 回答
153 浏览

bash - shell中的“${0##*[\\/]}”是什么意思?

当我查看其他人的 shell 脚本时,我得到了这个问题。

我看到声明

既然我找不到任何答案,那么这段代码的含义是什么?

0 投票
1 回答
88 浏览

bash - 任何人都可以向我解释 ip="${ip:-${default_ip}}

我需要你们的帮助来理解这个黑色的代码。我的最后一行有问题。

谢谢

谢谢你

0 投票
1 回答
564 浏览

c++ - 如何将参数包扩展为向量

编译问题错误:'std::vector' 的初始化没有匹配的构造函数

我正在构建的代码库有几个不需要可变参数模板参数的对象。我想让他们接受 std::any 的向量。我的对象以 HTML 实体命名,例如 H1、H2、PARAGRAPH。

创建对象的接口。

模板参数包扩展为 createElement 函数上的向量未编译。我使用的版本是c++17

当我调用模板函数时,我将属性对象传递给它。模板参数中的一个,类似于 HTML 实体名称,但全部大写。在参数包中是属性。属性也是对象。

例如,在模板头文件 viewManager.hpp 中定义了以下内容

而在应用程序中,如 main.cpp

如您所见,语法使用返回 numericFormat 对象的用户定义文字。

到目前为止,我所拥有的完整源代码可以在C++ Source中看到。我希望任何对象都包含数据,而不是您提到的指针。

0 投票
0 回答
38 浏览

regex - 参数扩展正则表达式?

我对 Groovy 中的参数扩展有疑问。我有一个变量叫做:${My_Version}现在我看到你只能使用变量的前 4 位数字,有以下可能性:${My_Version[0..4]}

现在我有以下问题我想使用正则表达式参数来过滤掉像 10.0.0 这样的软件版本。对应的正则表达式参数为:^(\d+.)?(\d+.)?(*|\d+)[;]

如何从这个变量中使用这个 Regex 参数。谢谢您的帮助。

我一直在考虑类似的事情:${My_Version[^(\d+\.)?(\d+\.)?(\*|\d+)[;]]}

0 投票
1 回答
145 浏览

zsh - 对带有 Oa 标志的参数扩展结果使用标量或数组赋值时的不同顺序

在 zsh 中,如果我执行以下操作

然后echo $y将输出1 2 3echo $z将输出3 2 1

显然 y 是一个标量,而 z 是一个数组,但是为什么对 y 的标量分配最终没有将“3 2 1”分配给它呢?

0 投票
2 回答
112 浏览

arrays - 将数组元素的基数从八进制更改为十进制(在远程运行的本地 bash 脚本中)

我在下面的 bash 脚本中有问题。

我正在运行这里发布的代码

我的 bash 脚本代码:

这是上面代码的输出:

我的数组元素的结构也是 YYYY-MM-ddfor语句中出现错误,因此需要更改基数(从八进制到十进制)。我进行了几次尝试,我认为这是最接近解决方案的一个,但我没有成功:

欢迎任何帮助!

0 投票
3 回答
223 浏览

c++ - 在 C++ 中,使用参数包作为初始化列表是不好的做法吗?

我目前正在尝试使用可变参数模板,因为我正在尝试将可变参数类模板用于我正在从事的项目。我希望该类接受一个整数列表,该列表将用于创建该类的其他元素。最初,我使用模板构造函数来获取整数数组。但是,我在链接代码时遇到了问题。我想出了另一种方法来解决我的问题,使用可变参数类模板来获取整数列表,但我很好奇这段代码是否被认为是糟糕的 c++(我有一段时间没有编写 C++,这感觉很 hacky)。无论如何,这是我编写的测试代码,它可以按预期编译和工作:

正如预期的那样,代码输出:

这个解决方案有什么问题吗?我一直在网上搜索,似乎没有人以这种方式使用可变参数模板。

提前感谢您的输入。