$a = 'PF01389 6 218 1 255 430.09'; $b = 'PF00691 PF01389'; my @a = split ' ', $a; my @b = split ' ', $b; my %a; @a{@a} = (); my @common = grep { exists $a{$_} } @b;