use warnings; use strict; use Encode; use open qw( :std :utf8 ); my $start = "Colm Tóibín"; print decode("UTF-8", uc $start), $/; print uc decode("UTF-8", $start), $/; __END__ COLM TóIBíN COLM TÓIBÍN