use strict; use warnings; use Data::Dumper; my $input = q|http://abc.org,http://de,f.org,https://ghi.org,http://jkl.org|; my @urls = (split /,(?=http)/, $input, 4)[0..2]; print Dumper \@urls;