Есть ли в Ruby встроенный метод для экранирования и разэкранирования строк? В прошлом я использовал регулярные выражения; однако мне пришло в голову, что Ruby, вероятно, постоянно выполняет такие преобразования внутри. Возможно, эта функциональность где-то раскрыта.
На данный момент я придумал эти функции. Они работают, но выглядят немного халтурно:
def escape(s)
s.inspect[1..-2]
end
def unescape(s)
eval %Q{"#{s}"}
end
Есть ли лучший способ?