Ruby's String.inspect экранирует все специальные символы, поэтому вы видите "\\
" с .inspect
См. String.inspect source здесь
if (c == '"'|| c == '\\' ||
(c == '#' &&
p < pend &&
MBCLEN_CHARFOUND_P(rb_enc_precise_mbclen(p,pend,enc)) &&
(cc = rb_enc_codepoint(p,pend,enc),
(cc == '$' || cc == '@' || cc == '{')))) {
if (p - n > prev) str_buf_cat(result, prev, p - n - prev);
str_buf_cat2(result, "\\");
prev = p - n;
continue;
}
в основном, if c == '\'
, конкатенируйте к нему "\
", чтобы он стал "\\
"
Если вы хотите дважды избежать обратной косой черты, вам нужно попробовать с
test_string = "C:/Program Files/TestPro/TestPro Automation Framework/"
puts test_string.gsub("/","\\\\\\\\")
#C:\\Program Files\\TestPro\\TestPro Automation Framework\\