# Reiterazioni varie all'interno dello stesso hash

**URL:** <https://www.ruby-forum.com/t/reiterazioni-varie-allinterno-dello-stesso-hash/92528>\
**Category:** IT\
**Created:** [April 20, 2007, 11:30am UTC](https://www.ruby-forum.com/t/reiterazioni-varie-allinterno-dello-stesso-hash/92528 "2007-04-20T11:30:10Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![sulfarom](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/839c29/32.png) [@sulfarom](https://www.ruby-forum.com/u/sulfarom)\
**Post date:** [April 20, 2007, 11:30am UTC](https://www.ruby-forum.com/t/reiterazioni-varie-allinterno-dello-stesso-hash/92528/1 "2007-04-20T11:30:10Z")

</div>

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[removed\_email\_address@domain.invalid].include?(mail\_ist)}  
@dir.each\_key {|mail\_ist| @dir\_spediti\_ist["#{mail}"] =  
@dir\_spediti\_ist["#{mail}"]+=1 if @a[removed\_email\_address@domain.invalid].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.

---

<div class="post-metadata">

**Author:** ![sulfarom](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/839c29/32.png) [@sulfarom](https://www.ruby-forum.com/u/sulfarom)\
**Post date:** [April 20, 2007, 12:36pm UTC](https://www.ruby-forum.com/t/reiterazioni-varie-allinterno-dello-stesso-hash/92528/2 "2007-04-20T12:36:18Z")

</div>

Mauro S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) 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”}

---

<div class="post-metadata">

**Author:** ![sulfarom](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/839c29/32.png) [@sulfarom](https://www.ruby-forum.com/u/sulfarom)\
**Post date:** [April 20, 2007, 1:21pm UTC](https://www.ruby-forum.com/t/reiterazioni-varie-allinterno-dello-stesso-hash/92528/3 "2007-04-20T13:21:28Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![sulfarom](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/839c29/32.png) [@sulfarom](https://www.ruby-forum.com/u/sulfarom)\
**Post date:** [April 20, 2007, 1:25pm UTC](https://www.ruby-forum.com/t/reiterazioni-varie-allinterno-dello-stesso-hash/92528/4 "2007-04-20T13:25:28Z")

</div>

Mauro S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) writes:

> > =\> {“1”=\>“1”, “2”=\>“2”}

Ehm… hai mostrato il mio stesso esempio, solo su piu’ righe invece che  
su una sola…

---

<div class="post-metadata">

**Author:** ![sulfarom](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/839c29/32.png) [@sulfarom](https://www.ruby-forum.com/u/sulfarom)\
**Post date:** [April 20, 2007, 1:26pm UTC](https://www.ruby-forum.com/t/reiterazioni-varie-allinterno-dello-stesso-hash/92528/5 "2007-04-20T13:26:28Z")

</div>

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 🙂
