#!/usr/bin/perl use strict; use warnings; my @office_pats = ( '\d{3}-\d{4}' ); my @iternat_pats = ( '[+]\d \d{3} \d{3}-\d{4}' ); my ($office_pat) = map qr/$_/, join '|', @office_pats; my ($internat_pat) = map qr/$_/, join '|', @internat_pats; my @office_phones; my @internat_phones; for (@recs) { my $rec = $_; $rec =~ s/^\s+//; $rec =~ s/\s+$//; push @office_phones, $rec if $rec =~ /^$office_pat\z/; push @internat_phones, $rec if $rec =~ /^$internat_pat\z/; } print "$_ (o)\n" for @office_phones; print "$_ (i)\n" for @internat_phones;