首页 > 解决方案 > Ruby 在 unicode 字符串中插入变量

问题描述

要获得 unicode 表情符号,我会这样做:

irb> "\u{1f384}"
=> ""

但是如果我在 unicode 中使用变量,则会收到以下错误:

irb> d=4
=> 4
irb> "\u{1f38#{d}}"
(irb):11: unterminated Unicode escape
"\u{1f38#{d}}"

如何在 unicode 中使用字符串插值?

标签: rubystringunicode

解决方案


您可以使用pack('U')生成 Unicode 数据:

d = 4
["1f38#{d}".hex].pack("U")

推荐阅读