2016-03-10 58 views
2

当我输入包含irb中土耳其字符的名称作为字符串输入时,irb将输出到终端,就好像存在编码不匹配一样。但是,如果字符串通过put或print打印到控制台,输出结果就是我所期望的。IRB字符串输出不匹配

这里会发生什么?有什么办法可以配置irb,以便它显示字符串内容,就好像它用puts方法打印一样。

irb commands

回答

2

使用p my_name是一样的做puts my_name.inspect,其中inspect返回(在这种情况下)的特殊字符的字符串逃过一劫。

+0

但是根据OP的描述,OP可以通过'puts'或'print'获得相同的结果。如果那是真的,那么这个答案就不能解释这一点。 – sawa

+0

@sawa'puts'和'print'之间的区别是'puts'添加了一个新行。从屏幕截图中,我看到使用'puts'时添加了一个新行。 –

+0

这是如何解释字符串是用'puts'和'print'转义的? – sawa