my $from_address = q{"Tom Smith" <tomsmith@gmail.com>};
my ($email) = $from_address =~ m/<([^>]+)>/;
print "$email\n";
Это позволит извлечь весь контент из первой строки из 1 или более не >
символов, заключенных в угловые скобки.
NB. Это не подтверждает, что адрес электронной почты сформирован правильно.Если вы хотите убедиться, что содержимое, извлеченное вами из формата <>, является действительным, что вам следует сделать, тогда вам следует взглянуть на https://metacpan.org/source/RJBS/Email-Address-1.895/lib/Email/Address.pm