Se ho una roba del genere:
@a=riga1.scan(/<(.?@.?)>|(?)/).flatten.compact
@dir.each_key do |mail|
if @a.include?(mail)
if @a[0] == mail
@dir_spediti["#{mail}"] = @dir_spediti["#{mail}"]+=1
@ist.each {|mail_ist| @dir_spediti_ist["#{mail}"] =
@dir_spediti_ist["#{mail}"]+=1 if @a[[email protected]].include?(mail_ist)}
@dir.each_key {|mail_ist| @dir_spediti_ist["#{mail}"] =
@dir_spediti_ist["#{mail}"]+=1 if @a[[email protected]].include?(mail_ist)}
end
end
end
quella iterazione di @dir.each_key all’interno di una iterazione della
stessa @dir.each_key mi fa perdere il puntatore della prima iterazione?
Cioe’ se la prima iterazione parte da 1 e all’interno itero sullo stesso
hash da 1 a 5, quando ritorno su continuo da due o riprende dall’inizio?
Non so se mi sono spiegato.
Grazie.
Mauro S. [email protected] writes:
Ovviamente no. Esempio:
irb(main):003:0> hash = {‘1’ => ‘1’, ‘2’ => ‘2’}
=> {“1”=>“1”, “2”=>“2”}
irb(main):004:0> hash.each_key { |k1| puts 'outer loop k: ’ + k1;
hash.each_key {|k2| puts 'inner loop k: ’ + k2}}
outer loop k: 1
inner loop k: 1
inner loop k: 2
outer loop k: 2
inner loop k: 1
inner loop k: 2
=> {“1”=>“1”, “2”=>“2”}
Il giorno ven, 20/04/2007 alle 12.33 +0200, Luigi P. ha scritto:
outer loop k: 2
inner loop k: 1
inner loop k: 2
=> {“1”=>“1”, “2”=>“2”}
io intendevo questo:
irb(main):001:0> hash = {“a”=>“1”,“b”=>“2”,“c”=>“3”,“d”=>“4”,“e”=>“5”}
irb(main):008:0> hash.each_key do |x|
irb(main):009:1* puts “esterno #{x}”
irb(main):010:1> hash.each_key do |y|
irb(main):011:2* puts “interno #{y}”
irb(main):012:2> end
irb(main):013:1> end
esterno a
interno a
interno b
interno c
interno d
interno e
esterno b
interno a
interno b
interno c
interno d
interno e
esterno c
interno a
interno b
interno c
interno d
interno e
esterno d
interno a
interno b
interno c
interno d
interno e
esterno e
interno a
interno b
interno c
interno d
interno e
Mauro S. [email protected] writes:
=> {“1”=>“1”, “2”=>“2”}
Ehm… hai mostrato il mio stesso esempio, solo su piu’ righe invece che
su una sola…
Il giorno ven, 20/04/2007 alle 13.22 +0200, Luigi P. ha scritto:
inner loop k: 1
irb(main):012:2> end
irb(main):013:1> end
Ehm… hai mostrato il mio stesso esempio, solo su piu’ righe invece che su una sola…
Acc scusa, evidentemente sono un po stanco