【发布时间】:2011-06-18 07:49:18
【问题描述】:
使用ruby,是否可以轻松地将字母表中的每个字母和0-9组成一个数组?
【问题讨论】:
标签: ruby
使用ruby,是否可以轻松地将字母表中的每个字母和0-9组成一个数组?
【问题讨论】:
标签: ruby
对于字母或数字,您可以形成范围并对其进行迭代。试试这个以获得一个大致的想法:
("a".."z").each { |letter| p letter }
要从中获取一个数组,只需尝试以下操作:
("a".."z").to_a
【讨论】:
[*('a'..'z'), *('0'..'9')] # doesn't work in Ruby 1.8
或
('a'..'z').to_a + ('0'..'9').to_a
或
(0...36).map{ |i| i.to_s 36 }
(Integer#to_s 方法将一个数字转换为一个字符串,以所需的numeral system 表示它)
【讨论】:
* 运算符是否有特定名称?这对我来说是新的。
你也可以这样做:
'a'.upto('z').to_a + 0.upto(9).to_a
【讨论】:
myarr = [*?a..?z] #generates an array of strings for each letter a to z
myarr = [*?a..?z] + [*?0..?9] # array of strings a-z and 0-9
【讨论】:
你可以这样做:
("0".."Z").map { |i| i }
【讨论】:
试试这个:
alphabet_array = [*'a'..'z', *'A'..'Z', *'0'..'9']
或者作为字符串:
alphabet_string = alphabet_array.join
【讨论】:
letters = *('a'..'z')
=> ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]
【讨论】: