From: Todd Benson Date: 2008-03-28T19:06:11+09:00 Subject: Re: extract data from an array On Fri, Mar 28, 2008 at 4:47 AM, Sijo Kg wrote: > Hi > I have a while loop as below > > while count <= total_ci_id_asso_types do > v = "sd_ci"+"#{count}" > ci_id_asso_type=params[:"#{v}"] > count=count+1 > end > > for example > puts ci_id_asso_type gives > id45service_desk_ci_association_type_id1 > id65service_desk_ci_association_type_id1 etc > > What I need is to get > 45,1 > 65,1 (ie two numbers) from above..How can I do that > > Thanks in advance > Sijo s = "id45service_desk_ci_association_type_id1" (s.match /(\d+)service_desk_ci_association_type_id(\d+)/)[1,2].join(',') => "45,1" Also, instead of params[:"#{v}"], you can just do params[v.to_sym] or params[v.intern] Todd