ruby - 是否有与 Java MessageFormat 等效的 Ruby?

标签 ruby messageformat

我有一个格式的字符串:

您好 {0},今天是 {1},时间是 {2}。你要吃 {3} 吗?

给定一个数组["sir", "Monday", "12:00", "tacos"],这个字符串的格式应该是:

先生您好,今天是星期一,时间是中午12:00。你会吃炸 Jade 米饼吗?

Ruby 是否有某种内置方法来执行此操作?或者有没有 gem ?还是我只需要更换琴弦?

编辑:我想补充一点,我不能编辑这些字符串。因此类似 sprintf 的解决方案是行不通的。

最佳答案

Kernel#sprintf :

sprintf("Hello %s, today is %s and the time is %s. Will you be eating %s?", *["sir", "Monday", "12:00", "tacos"])

"Hello %s, today is %s and the time is %s. Will you be eating %s?" % ["sir", "Monday", "12:00", "tacos"]

关于ruby - 是否有与 Java MessageFormat 等效的 Ruby?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29139128/

相关文章:

ruby-on-rails - 在 Passenger 的子目录中部署 Rails 应用程序

java.text.MessageFormat 不带数字分组分隔符

java - 使用 MessageFormat 创建 ASCII 温度计

ruby-on-rails - 在 Rails 中提供当前日期

ruby - RSpec: stubbing Kernel::sleep?

ruby - 启动一个线程

java - 在Struts中,如何从ResourceBundle中选取ActionMessage中的 'replacement values for message'

java - MessageFormat 格式化模式 查询

ios - 使用 iOS Stringsdict 文件的显式复数字符串

ruby-on-rails - File.read 返回 nil