在 Rails 中将变量转换为 ASCII

Convert variables to ASCII in Rails

在Rails(Ruby1.9+)中,可以调用?a.ord获取"a".

的ascii字符

如何对包含单个字符的变量做同样的事情?

myvar = "a"
?myvar.ord      # fails
?(myvar).ord    # fails
?[myvar].ord    # fails
?{myvar}.ord    # fails

"a".ord 您可以查看 ruby 文档 API 来验证 http://ruby-doc.org/core-1.9.3/String.html

?a.ord 相当于:

s = ?a
s.ord

所以您需要做的就是在您的字符串上调用 String#ord 方法:

myvar.ord

请记住 ?a'a' 相同,它只是用于创建单个字符串的(相当奇怪的)shorthand。

myvar = "a"
myvar.ord # => 97

String#ord 是一种 returns 接收字符串第一个字符的代码点的方法,因此您只需在包含字符串对象的变量上调用它即可。

?a是表示字符a的字符串的一种写法。