问题标签 [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 投票
8 回答
6794 浏览

bash - 以冒号作为分隔符的通配符/路径名扩展

如何转换包含 glob 字符的字符串,例如

到与模式匹配的以冒号分隔的文件名字符串(即 PATH 兼容)?

echo /var/lib/gems/*/bin会回来

我想

反而。

显而易见的方法是简单地用 ':' via 替换空格字符tr,但如果文件名本身包含空格字符,那将不起作用。

0 投票
3 回答
555 浏览

emacs - 从 Emacs 21.2 升级时,minibuffer 中的动态扩展不再起作用

继续我迁移最新最好的 Emacs 23.2 的过程,我遇到了另一个令人不快的惊喜:minibuffer 中的动态扩展不再起作用!

我所说的“迷你缓冲区中的动态扩展”是指让你盲目地按空格键来完成文件名、变量等的功能。

我还调用了“Emacs -Q”(以排除任何 .emacs 工件),问题不仅存在于 Windows XP 上的 Emacs 23.2,甚至存在于 Ubuntu 上的 Emacs 22.1。

Emacs 的默认行为发生了一些变化,但它是什么?

0 投票
2 回答
98 浏览

solr - 如何在 Solr 中启用“Bicycle AND Boy”搜索?

我已经启动并运行了 solr,但是当我搜索“Bicycle AND Boy”时我无法获得结果,“Bicycle Boy”工作正常。启用此类搜索的步骤是什么?

0 投票
2 回答
1183 浏览

properties - 文件集/模式集的 refid 属性未展开。您将如何编写一个对任意文件集进行操作的目标?

我有一组目标,每个目标基本上都做同样的事情,除了每个都包含一个特定的模式集来执行其任务。我想将这些目标折叠成一个“可重用”目标,而不是将一组文件“作为参数”。

例如,这个

将被替换为

但是,事实证明,由于模式集和文件集与属性不同,因此并未像nant-dev 电子邮件发布refid中所回答的那样扩展。在这个非工作代码中,当被调用时,它的元素引用了一个字面上名为${sourcefiles}的模式集,而不是名为test的模式集。echopatternset

如何编写一个可重用的 NAnt 目标来对一组不同的文件进行操作?有没有办法在 NAnt 中按原样执行此操作而无需编写自定义任务?

0 投票
2 回答
1469 浏览

java - 在 Eclipse 中运行 Java 应用程序时如何避免全局扩展

我遇到了 Eclipse 运行配置的一种特殊行为,它似乎是一个仅限 Windows 的问题。假设我有一个 Java 应用程序可以打印出命令行参数,如下所示:

如果我为参数提供了一个可以由 shell 扩展的通配符,shell 将扩展它并将其提供给 Java 程序。这并不奇怪。所以,如果我在命令提示符下

该程序将打印

其中 foo.txt 和 bar.txt 是目录“test”中的文件。

如果我将通配符参数括在引号中,则可以防止外壳扩展;*nix 上的单引号和 Windows 上的双引号。所以对于 Windows,如果我在命令提示符下执行以下操作:

该程序现在将打印

(没有扩展)。

但是,我发现 Eclipse 运行启动器中的引用似乎没有任何效果,并且参数仍然展开。如果我把

在 Eclipse 运行启动器的程序参数部分,并运行上面的类,我仍然得到

换句话说,当程序实际运行时,双引号似乎丢失了。这似乎只发生在 Windows 上。

有没有办法防止在 Windows 上使用 Eclipse 运行启动器进行 glob 扩展?

0 投票
5 回答
5045 浏览

find - Gnuwin32 find.exe 在执行搜索之前扩展通配符

我在 Windows 环境中使用 Gnuwin32 二进制文件。
当我想查找某种类型的文件时,比如说 PDF,我通常会运行:

这在任何 UNIX 系统上都能完美运行。

但是在windows下,用双引号代替了单引号,只有在当前目录下没有pdf文件的情况下才有效,否则*会被展开

更糟糕的是:当当前目录中只有一个PDF文件时,它会展开,不会出现语法错误,并且会得到错误的结果。

我试过*用插入符号、反斜杠、星号本身转义,在双引号内加上:没有什么对我有用。

真实例子:

好的,这是我所有的文件:

良好的行为,通配符未扩展

注意,不一致的行为,通配符已扩展:

注意,行为不一致,通配符已扩展:

谢谢

0 投票
3 回答
1101 浏览

haskell - Haskell:方程扩展器 1+(1+(1+(1+(…))))=∞

0 投票
2 回答
1146 浏览

gcc - 如何仅在非 C/C++ 上下文中使用 gcc 进行宏扩展?

如何使用 gcc 在包含(例如)python/php/perl 代码的文件中扩展宏?

有一个文件包含:

我曾尝试使用:

但它显示了这个:

如何避免 gcc 添加这些注释和(如果可能)额外的换行符?

0 投票
1 回答
2820 浏览

properties - soapUI:测试用例中未用于属性扩展的属性

我正在使用soapUI 3.6.1,我想测试一个具有如下测试结构的SOAP接口:

TestCase Single包含应使用相同帐户 ID 执行的一堆请求。TestCase Loop应该TestCase Single使用不同的帐户 ID 调用。Properties *应该更改帐户ID 。

MyProject有一个属性accountId设置为 1234。这应该作为测试用例的单个测试的默认值,即TestCase Single.

Properties #1Properties #2指定accountId了不同的值。

目的是允许TestStep 1单独执行或作为TestCase Loop.

TestStep 1有一个共同的 SOAP 主体,其中以下是发送到 Web 服务的参数:

Groovy #1Groovy #2看起来像这样:

我现在的问题是 Groovy 脚本写入了正确的值accountId(即循环内的值),但TestStep 1始终使用项目中的值。我想TestStep 1使用循环的值。

出于调试目的,我还将以下内容放入TestStep 1

我用 Wireshark 跟踪了网络流量,发现它只${#Project#accountId}返回了一个值。

我在这里做错了什么?我如何需要对<accId>-element 进行编码以将正确的值发送到远程主机?

0 投票
3 回答
39759 浏览

bash - 如何使bash扩展变量中的通配符?

我正在尝试达到与打字相同的效果

在命令行,从 bash 脚本内部。我有:

它在运行时会出现意外错误:

引用所有这些内容的正确方法是什么,以便mv实际进行所需的扩展?(是的,有很多文件与 . 中的模式匹配./images/。)