#! /usr/bin/perl use warnings; use strict; my %email; while (<>) { undef $email{$1} while /([-'a-z._0-9]+@(?:[a-z0-9_]+\.)+[a-z]+)/ig; } print join ';', sort keys %email;