in reply to Seeking a better way to do it

Use grep!!!

my $char_list = "Enter Iago, Othello, and others"; my @Word_List = grep { /[A-Z]\w+/ } split(/\W/, $char_list); print "@Word_List\n";
Update:

Simple way with regular expression,

my $char_list = "Enter Iago, Othello, and others"; my @Word_List; @Word_List = ($char_list =~ /([A-Z]\w+)/g); print "@Word_List\n";

Replies are listed 'Best First'.
Re^2: Seeking a better way to do it
by Tux (Canon) on Feb 01, 2013 at 07:33 UTC

    That would also match camelCase and Some_shell, you'd want

    my @wordlist = ($string =~ m{\b ([A-Z][a-z]+) \b}gx);

    as BrowserUK also posted


    Enjoy, Have FUN! H.Merijn
Re^2: Seeking a better way to do it
by frozenwithjoy (Priest) on Feb 01, 2013 at 05:22 UTC
    This works assuming OP also wants to return 'Enter'. This is left out of the requirements, but I'm not sure if it is an oversight or not.