grep $a[8], @b;
print grep(/$a[8]/, @b);
my $index = first { $b[ $_ ] eq 'a[8]' } 0 .. $#b;
my $index = first { $b[ $_ ] eq $a[8] } 0 .. $#b;
2011-10-11T10:46:35 pqalso das mit dem string 'a[8]' und dem grep $a[8] kapiere ich überhaupt nicht. wo ist da der zusammenhang?
ein string 'a[8]' hat nichts mit einem array a zu tun.
2011-10-11T09:40:59 choffIm @a gibt es einen bestimmten String: a[8].
2011-10-11T09:40:59 choffIm @a gibt es einen bestimmten String: a[8]. Dieser soll jetzt im @b gesucht werden und der Index vom @b ausgegeben werden: $b[?]. Zusätzlich soll auch der gesuchte String aus dem @b mit ausgegeben werden. Der String kann auch nur einmal vorkommen.
1 2 3 4 5 6
use List::MoreUtils qw(first_index); my @a; $a[8] = 3; my @b = (5 .. 27); my $idx = first_index {$_ =~ /$a[8]/} @b; print "Index $idx Inhalt $b[$idx]\n" if defined $idx;