- I was never able to find a decent piece of code that was able to parse out the extension of a given file delimited by a '.' regardless of how many '.'s were in the filename
While I do admire your industrial spirit, you can already do this with File::Basename ...
my $fname = "/usr/local/isp/system.update.perl";
my ($name, $path, $suffix) = fileparse($fname, '\.[^\.]*');
print STDOUT $name, "\n";
The key to this working is the regular expression passed to the fileparse method - The regular expression in the example above matches the suffix of a file as being the last dot and what follows it, excluding any subsequent dots ([^\.]).
perl -e 'firstname.lastname@example.org&&&split/[@.]/&&s&.com.&_&&&print'