<div dir="ltr"><div class="gmail_default" style="font-size:large">Нет, это не вариант.</div><div class="gmail_default" style="font-size:large">Функция не знает о хеше %h и его структуре, совсем не знает :)</div><div class="gmail_default" style="font-size:large"><br></div><div class="gmail_default" style="font-size:large">Представьте, что этот хеш может быть не 2х уровневый, а много-много-вложенный по уровням</div><div class="gmail_default" style="font-size:large">и </div><div class="gmail_default" style="font-size:large"><span style="font-size:small">$ref eq $value</span> </div><div class="gmail_default" style="font-size:large">может случится на другом уровне.</div><div class="gmail_default" style="font-size:large"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">вт, 1 окт. 2024 г. в 13:03, Steffen Winkler via Moscow-pm <<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">use strict;<br>
use warnings;<br>
<br>
my %h = ( a => { b=> 1}, aa=> {bb=>2, }, );<br>
<br>
sub where_key {<br>
my $ref = shift;<br>
<br>
while ( my ($key, $value) = each %h ) {<br>
$ref eq $value<br>
and return $key;<br>
}<br>
<br>
return;<br>
}<br>
<br>
my $k = where_key( $h{aa} );<br>
print $k;<br>
exit;<br>
<br>
<br>
-- <br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" rel="noreferrer" target="_blank">http://moscow.pm.org</a><br>
</blockquote></div>