问题标签 [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.
php - Ruby 上瘾者在字符串中寻找 PHP 子表达式
语境
- PHP 5.3.x
概述
在与经常使用 php 和 ruby 的同事进行代码审查后,与 ruby 相比,php 中的字符串插值出现了一个有趣的挑战。
问题
假设颜色=“橙色”;
红宝石:
PHP:
挑战:谁能指定一种让 PHP 版本表现得像 Ruby 的方法?
警告
此挑战旨在作为一项有趣的练习,但仅限于使用直接 PHP。这不适用于严肃的 PHP 项目。对于严肃的 PHP 项目,开发人员将需要考虑插件库,例如TWIG。
ruby - 别名方法导致不同的对象?
在上面的示例中,我希望每个方法调用都看到相同的 object_id 输出,因为它们引用了相同的方法。为什么我看到不同的 object_id?当您在 Ruby 中为方法设置别名时,别名不是指原始对象,而不是副本吗?
templating - 插值和模板
我正在尝试验证我对字符串插值和字符串模板的理解。
说这两个 Java 代码片段是模板的例子是否正确?
这个 Groovy 片段是字符串插值的示例:
说 Java 和 Python 支持模板但不支持插值是否正确,但 Groovy 确实支持插值。
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 中使用插值字符串的方法,但考虑到变量本身就是字符串,并且我试图用斜杠字符将它们连接在一起,这不是最终结果字符串连接吗?
干杯,
powershell - 如何在双引号字符串中使用对象的属性?
我有以下代码:
当我尝试在字符串执行命令中使用其中一个属性时:
它试图只使用 的值$DatabaseSettings
而不是 的值$DatabaseSettings[0].DatabaseName
,这是无效的。
我的解决方法是将其复制到一个新变量中。
如何在双引号字符串中直接访问对象的属性?
python - 使用字典和字符串的 Python 字符串插值
鉴于:
插入字符串以生成以下内容的最佳/最短方法是什么:
路径:/var/blah 当前:1.1 上一个:1.0
我知道这有效:
但我希望有一种更短的方法,例如:
如果这似乎是一个过于迂腐的问题,我深表歉意。
javascript - 如何在 JavaScript 中进行字符串插值?
考虑这段代码:
除了字符串连接之外,还有其他方法可以将变量的值插入到字符串中吗?
parsing - 在 ANTLR 中解析字符串插值
我正在为内部目的开发一个简单的字符串操作 DSL,我希望该语言支持字符串插值,因为它在 Ruby 中使用。
例如:
我正在尝试在 ANTLRv3 中实现我的解析器,但是我对使用 ANTLR 非常缺乏经验,所以我不确定如何实现这个功能。到目前为止,我已经在词法分析器中指定了我的字符串文字,但在这种情况下,我显然需要在解析器中处理插值内容。
我当前的字符串文字语法如下所示:
将字符串文字处理移入解析器似乎会使其他一切停止正常工作。粗略的网络搜索没有产生任何信息。关于如何开始这方面的任何建议?
java - Java 表达式语言:插值?
问候,
在我正在开发的 web 应用程序中,我想做如下的事情:
我有一个像
所以 outputString 被插值如下:http://www.ncbi.nlm.nih.gov/pubmed?term=gene19191X
是否有任何轻量级的 EL 框架可供我使用?
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`)
- 添加了使用的类的实际实现