Ruby:如何将条件插入字符串连接

标签 ruby

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

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

dear = ""

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

但是结果报错:undefined method '+' for true

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

最佳答案

使用插值而不是连接更容易和更具可读性:

dear = ""

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

关于Ruby:如何将条件插入字符串连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28648536/

相关文章:

ruby - 使用 keep_if 的数组过滤器

ruby-on-rails - 在 Rails 开发中加载类后代

ruby -::在 Ruby 语法中是什么意思?

ruby-on-rails - 自定义验证器测试 - 包含错误?

ruby - Paymill:如何在测试时模拟失败的付款?

ruby - 如何在控制台中强制要求一个文件? 'reload!' 命令根本不起作用!

windows - 错误 : The requested service provider could not be loaded or initialized. - 套接字 (2)

ruby - Hadoop环境变量

ruby-on-rails - 用于 API key + key 签名的 Rails 插件

ruby-on-rails - 尝试通过关系显示所有项目时出现 Postgres 错误