首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ruby:如何在字符串连接中插入条件

Ruby:如何在字符串连接中插入条件
EN

Stack Overflow用户
提问于 2015-02-22 01:05:47
回答 3查看 8.7K关注 0票数 9

在字符串连接中,是否可以在语句中直接包含条件?

在下面的示例中,我希望仅当"my dear"列表不为空时才连接dear

代码语言:javascript
运行
复制
dear = ""

string = "hello" + " my dear" unless dear.empty? + ", good morning!" 

但是结果是一个错误:未定义的方法'+‘表示true

我知道另一种选择是在这个语句之前定义一个额外的变量,但我想避免这种情况。

EN

回答 3

Stack Overflow用户

发布于 2015-02-22 01:09:15

使用插值而不是连接,它更容易,可读性更好:

代码语言:javascript
运行
复制
dear = ""

string = "hello#{ ' my dear' unless dear.empty? }, good morning!"
票数 11
EN

Stack Overflow用户

发布于 2015-02-22 01:08:27

在这种情况下,最好使用三元运算符。

代码语言:javascript
运行
复制
string = "hello" + (dear.empty? ? "" : " my dear") + ", good morning!" 

语法是这样的

代码语言:javascript
运行
复制
condition ? if true : if false
票数 7
EN

Stack Overflow用户

发布于 2015-02-22 01:57:44

这里有个可爱的东西

代码语言:javascript
运行
复制
dear = ""
"hello%s, good morning!" % (' my dear' unless dear.empty?)
# => "hello, good morning!"
dear = "val"
"hello%s, good morning!" % (' my dear' unless dear.empty?)
# => "hello my dear, good morning!"
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28648536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档