【发布时间】:2013-05-26 03:28:52
【问题描述】:
我正在使用 Ruby 开发一个项目。我使用的库返回双引号中的字符串,例如:"\x00\x40"。由于字符串用双引号括起来,任何可以转换为 ASCII 字符的十六进制都会被转换。因此,当我打印时,我实际上看到:"\x00@"。
我发现,如果我使用单引号,那么字符串将以纯十六进制打印(无需转换),这正是我想要的。如何将双引号字符串更改为单引号?
我没有任何方法可以更改库中的返回类型,因为它是 C 扩展,我无法确定返回值的来源。任何想法都非常感谢。
【问题讨论】:
-
这适用于字符串 litterals,表示在您的源代码中找到的字符串。一旦被 ruby 引擎解析,所有字符串都是相等的,因此您的问题看起来很奇怪。如果要返回转义序列,还可以转义双引号字符串中的反斜杠。
-
转义反斜杠有效,但我看不到任何方法可以使用返回的数据。
-
好吧,请改进您的问题,因为现在还不够精确,无法清楚地理解。一些代码可能也会有所帮助。