In generale la mappatura indice -&gt; valore non è invertibile, ad esempio con array così:<div><br></div><div>@array = (1, 1, 1, 1, 1);</div><div><br></div><div>dove si trova &quot;1&quot;?</div><div><br></div><div>Se vuoi l&#39;indice del primo elemento uguale a quello che cerchi, puoi usare first_index (alias firstids) da <a href="http://search.cpan.org/perldoc?List::MoreUtils">List::MoreUtils</a>:</div>

<div><br></div><div>$indice = first_idx { $_ == $elemento } LISTA;</div><div><br></div><div>Al posto di &quot;==&quot; puoi ovviamente mettere &quot;eq&quot; ed in generale puoi mettere un qualsiasi blocco di test (ad esempio per cercare il primo elemento pari, positivo, ecc.)</div>

<div><br></div><div>Se sei sicuro che la mappatura sia invertibile - ossia la lista/array contiene solamente valori unici - e devi trovare parecchie inversioni potresti utilizzare una hash, ad esempio:</div><div><br></div>

<div>  my @array = (...);</div><div><br></div><div>  my %indice_di;</div><div>  @indice_di{@array} = 0 .. $#array;</div><div><br></div><div>  # oppure, più concisamente</div><div>  my %indice_di = map { $array[$_] =&gt; $_ } 0 .. $#array;</div>

<div><br></div><div>  $indice = $indice_di{$elemento};</div><div><br></div><div>Da notare che se hai elementi ripetuti questa tecnica ti darà l&#39;ultimo indice disponibile, non il primo come first_index().</div><div><br>

</div><div>Ciao,</div><div><br></div><div>   Flavio. </div><div><br><br><div class="gmail_quote">2009/9/11  <span dir="ltr">&lt;<a href="mailto:kanak@perl.it">kanak@perl.it</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

qual&#39;e&#39; la variabile che indica la posizione di un elemento dentro un<br>
array?<br>
<br>
in pratica l&#39;opposto di:<br>
&quot; $lista[x] &quot; che corrisponde ad &quot; elemento &quot;<br>
<br>
io vorrei una funzione tipo:<br>
 &quot;posizione(elemento, @lista) che corrisponde ad &quot; x &quot;<br>
<br>
 grazie<br>
<br>
_______________________________________________<br>
Roma mailing list<br>
<a href="mailto:Roma@pm.org">Roma@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/roma" target="_blank">http://mail.pm.org/mailman/listinfo/roma</a><br>
</blockquote></div><br></div>