in reply to Match last word in a sentence
My definitions produce a slightly different result. I assume that "sentence" is the string and "last word" is the last string of 'word' characters. The "rest" is all the characters before the "last word". Note that the space before "last word" is included in 'rest'. Possible non-word characters after "Last word" are discarded.
#!/usr/bin/perl use strict; use warnings; my $list = "This is my list"; $list =~ / ^(.+) # The 'rest' (Everything before last word) \b # UPDATE (ref [eyespoplikeamosquito] below) (\w+) # Last 'word' (string of contiguous word characters) \W*$ # Possible non-word characters at end of string /x; my $last = $2; my $the_rest = $1; print $the_rest; # "This is my" print $last; # "list"; <\c> <p>RESULT:</p> <c> This is my list
UPDATE: Added explicit definition of 'sentence'.