如何在Ruby中使用反斜杠打印字符串

bod*_*tva 6 ruby string irb backslash ruby-1.9.2

我有一个字符串str = "xyz\123",我想按原样打印它.

IRB给了我意想不到的输出.请在下面找到相同的内容: -

1.9.2p290 :003 > str = "xyz\123"
 => "xyzS" 
1.9.2p290 :004 > 
Run Code Online (Sandbox Code Playgroud)

关于如何让IRB打印原始字符串即"xyz\123"的任何想法.

谢谢..

更新:

我试图逃避它,但由于某种原因它似乎并不那么简单.请在下面找到我的试用版:

1.9.2p290 :004 > str = "xyz'\'123"
 => "xyz''123" 
1.9.2p290 :005 > str = "xyz'\\'123"
 => "xyz'\\'123" 
1.9.2p290 :006 > str = "xyz'\\\'123"
 => "xyz'\\'123" 
1.9.2p290 :007 > 
Run Code Online (Sandbox Code Playgroud)

Siw*_*申思维 5

更新答案:

转义标记'\'始终使用普通的ruby代码,但并不总是在"ruby控制台"中工作.所以我建议你写一个单元测试:

# escape_token_test.rb 
require 'test/unit'
class EscapeTokenTest < Test::Unit::TestCase
  def test_how_to_escape
    hi = "hi\\backslash"
    puts hi
  end 
end
Run Code Online (Sandbox Code Playgroud)

你会得到如下结果:

hi\backslash
Run Code Online (Sandbox Code Playgroud)

并查看@ pst的评论.