问题标签 [string-interpolation]

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 投票
6 回答
849 浏览

php - Ruby 上瘾者在字符串中寻找 PHP 子表达式

语境

  • PHP 5.3.x

概述

在与经常使用 php 和 ruby​​ 的同事进行代码审查后,与 ruby​​ 相比,php 中的字符串插值出现了一个有趣的挑战。

问题

假设颜色=“橙色”;

红宝石:

PHP:

挑战:谁能指定一种让 PHP 版本表现得像 Ruby 的方法?

警告

此挑战旨在作为一项有趣的练习,但仅限于使用直接 PHP。这不适用于严肃的 PHP 项目。对于严肃的 PHP 项目,开发人员将需要考虑插件库,例如TWIG

0 投票
3 回答
187 浏览

ruby - 别名方法导致不同的对象?

在上面的示例中,我希望每个方法调用都看到相同的 object_id 输出,因为它们引用了相同的方法。为什么我看到不同的 object_id?当您在 Ruby 中为方法设置别名时,别名不是指原始对象,而不是副本吗?

0 投票
0 回答
265 浏览

templating - 插值和模板

我正在尝试验证我对字符串插值和字符串模板的理解。

说这两个 Java 代码片段是模板的例子是否正确?

这个 Groovy 片段是字符串插值的示例:

说 Java 和 Python 支持模板但不支持插值是否正确,但 Groovy 确实支持插值。

0 投票
4 回答
861 浏览

perl - 为什么这个预期的插值被 Perl 解释为除法?

天,

为什么我从下面的脚本片段中收到以下两个错误?

参数“www4.mh.xxxx.co.uk.logstatsto20090610.gz”在第 56 行的除法 (/) 中不是数字

参数“/logs/xxxx/200906/mcs0.telhc/borg2”在第 56 行的除法 (/) 中不是数字

变量 $dir 和 $log 都是字符串,两个字符串的连接以及中间的斜线也用引号引起来。

编辑:第 56 行绝对是 if 语句。但是,Paul,您是对的,将第57 行的除法用引号括起来可以解决问题。谢谢。

编辑:报告第 56 行的 Perl 版本是

编辑:虽然在 Perl 中使用插值字符串的方法,但考虑到变量本身就是字符串,并且我试图用斜杠字符将它们连接在一起,这不是最终结果字符串连接吗?

干杯,

0 投票
5 回答
78403 浏览

powershell - 如何在双引号字符串中使用对象的属性?

我有以下代码:

当我尝试在字符串执行命令中使用其中一个属性时:

它试图只使用 的值$DatabaseSettings而不是 的值$DatabaseSettings[0].DatabaseName,这是无效的。
我的解决方法是将其复制到一个新变量中。

如何在双引号字符串中直接访问对象的属性?

0 投票
8 回答
42052 浏览

python - 使用字典和字符串的 Python 字符串插值

鉴于:

插入字符串以生成以下内容的最佳/最短方法是什么:

路径:/var/blah 当前:1.1 上一个:1.0

我知道这有效:

但我希望有一种更短的方法,例如:

如果这似乎是一个过于迂腐的问题,我深表歉意。

0 投票
21 回答
448120 浏览

javascript - 如何在 JavaScript 中进行字符串插值?

考虑这段代码:

除了字符串连接之外,还有其他方法可以将变量的值插入到字符串中吗?

0 投票
1 回答
6240 浏览

parsing - 在 ANTLR 中解析字符串插值

我正在为内部目的开发一个简单的字符串操作 DSL,我希望该语言支持字符串插值,因为它在 Ruby 中使用。

例如:

我正在尝试在 ANTLRv3 中实现我的解析器,但是我对使用 ANTLR 非常缺乏经验,所以我不确定如何实现这个功能。到目前为止,我已经在词法分析器中指定了我的字符串文字,但在这种情况下,我显然需要在解析器中处理插值内容。

我当前的字符串文字语法如下所示:

将字符串文字处理移入解析器似乎会使其他一切停止正常工作。粗略的网络搜索没有产生任何信息。关于如何开始这方面的任何建议?

0 投票
2 回答
2027 浏览

java - Java 表达式语言:插值?

问候,

在我正在开发的 web 应用程序中,我想做如下的事情:

我有一个像

所以 outputString 被插值如下:http://www.ncbi.nlm.nih.gov/pubmed?term=gene19191X

是否有任何轻量级的 EL 框架可供我使用?

0 投票
3 回答
15066 浏览

python - python字符串插值

什么会产生以下行为?

但:

更多信息:

  • 我的msg对象继承自unicode.
  • 方法__str__//方法被覆盖以返回字符串__unicode____repr__'my message'
  • msg对象是用字符串初始化的'another message'
  • 这是在 python 2.5 上运行的
  • 变量msg在测试之间没有改变
  • 这实际上是真正给出这些结果的真正 doctest。

我想要一个与这个 doctest 相匹配的解决方案,并尽量减少大惊小怪(尤其是在实际继承方面):

感谢所有建议。

我觉得这不会有更多帮助,但对于好奇的读者(和喜欢冒险的 pythonist),这里是对象的实现:

这就是我们创建对象 msg 的方式:

Zope 软件包版本和使用的代码是:

编辑信息:

  • 添加/更新了被覆盖的方法的名称
  • 添加了更多信息(python 版本和次要信息)
  • 更新了一些错误信息(`msg` 的类是基于 `unicode` 类而不是 `basestring`)
  • 添加了使用的类的实际实现