Hi all,
I want to create an array as following:
a4=[‘name 1’,‘name 2’…‘name 20’].
It looks like a range for me. But I can’t find a
method in class Range to create this array. Here is my
script I am not sure if this the Ruby way to do this.
Any inputs?
Li
str=‘name 1’
a4=[]
1.upto(20) do|i|
a4 <<(str.split()[0]+" #{i}")
end
p a4
#output
[“name 1”, “name 2”, “name 3”, “name 4”, “name 5”,
“name 6”, “name 7”, “name 8”, “name 9”, “name 10”,
“name 11”, “name 12”, “name 13”, “name 14”, “name 15”,
“name 16”, “name 17”, “name 18”, “name 19”, “name 20”]
On Thu, 21 Dec 2006, chen li wrote:
Hi all,
I want to create an array as following:
a4=[‘name 1’,‘name 2’…‘name 20’].
a4 = Array.new(20){|i| “name #{ i + 1 }”}
-a
It looks like a range for me. But I can’t find a
method in class Range to create this array. Here is my
script I am not sure if this the Ruby way to do this.
Any inputs?
(“blah 01”…“blah 20”).each {|e| puts e}
hope that helps,
UG
Uma G.
chen li wrote:
Hi all,
I want to create an array as following:
a4=[‘name 1’,‘name 2’…‘name 20’].
It looks like a range for me. But I can’t find a
method in class Range to create this array. Here is my
script I am not sure if this the Ruby way to do this.
Any inputs?
(‘1’…‘20’).map{|s| 'name ’ + s}
base = “name 00”
ary = []
20.times{ary << base.succ!.dup}
or:
base = "name "
ary = []
1.upto(20) {|x| ary << base + x.to_s}
Bob S. wrote:
Range has a to_a method, but it won’t work for ‘Name 1’…‘Name 20’ (it
does for ‘Name 01’…‘Name 20’ as pointed out).
I would use
arr = (1…20).collect{|i| “name #{i}”}
Thank all for your kindly inputs.
li
On 12/20/06, chen li [email protected] wrote:
Hi all,
I want to create an array as following:
a4=[‘name 1’,‘name 2’…‘name 20’].
It looks like a range for me. But I can’t find a
method in class Range to create this array. Here is my
script I am not sure if this the Ruby way to do this.
Any inputs?
Range has a to_a method, but it won’t work for ‘Name 1’…‘Name 20’ (it
does for ‘Name 01’…‘Name 20’ as pointed out).
I would use
arr = (1…20).collect{|i| “name #{i}”}