Ruby 包含八进制位模式的Unescape字符串

Ruby 包含八进制位模式的Unescape字符串,ruby,Ruby,在Ruby中,我很难找到包含(“\50\51”)的字符串 我试过了,也试过了。它们似乎都不能消除八进制位模式。这样做,但我想避免使用它 str='“\\50\\51” #预期结果(但不安全) 评估(str) # => "()" #不处理八进制位模式 str.undump # => "\\50\\51" 您可以这样评估它: s.gsub(/\\(\d+)/) { |v| $1.to_i(8).chr } 其中,将替换插值为八进制(从到\u i的基数8参数)。您可以这样计算它: s.gsub(/\

在Ruby中,我很难找到包含(
“\50\51”
)的字符串

我试过了,也试过了。它们似乎都不能消除八进制位模式。这样做,但我想避免使用它

str='“\\50\\51”
#预期结果(但不安全)
评估(str)
# => "()"
#不处理八进制位模式
str.undump
# => "\\50\\51"

您可以这样评估它:

s.gsub(/\\(\d+)/) { |v| $1.to_i(8).chr }

其中,将替换插值为八进制(从
到\u i
的基数8参数)。

您可以这样计算它:

s.gsub(/\\(\d+)/) { |v| $1.to_i(8).chr }
其中,它将替换插入为八进制(从
到\u i
的基数8参数)