#!/usr/bin/perl use warnings; use strict; while ( defined( my $location = ) ) { chomp $location; print $1, $/ if ( $location =~ m{(?<=:)(?:.-)?(.+?)$} ); } __DATA__ $names = Location:G-Canada $names = Location:Germany $names = Location:p-Australia $names = Location:e-Britain $names = Location:USA $names = Location:c-India $names = Location:Netherlands $names = Location:r-China $names = Location:North Korea $names = Location:Vatican City $names = Location:South Sudan $names = Location:Timor Leste $names = Location:Papua New Guinea