$source =~ m!(\d{1,2})[-/](\d{1,2})[-/](\d{2,4})!g; my $day = $1; if( $day == 1 or $day == 21 or $day == 31 ){ $day .= 'st'; }elsif( $day == 2 or $day == 22 ){ $day .= 'nd'; }elsif( $day == 3 or $day == 23 ){ $day .= 'rd'; }else { $day .= 'th'; } #### $day .= ( $day == 1 or $day == 21 or $day == 31 ) ? 'st' : ( $day == 2 or $day == 22 ) ? 'nd' : ( $day == 3 or $day == 23 ) ? 'rd' : 'th';