##
#! perl -sw
use strict;
my @filespecs = map{ $_ =~ s/^(.*?)(\.\w*)$/my $temp = $2; ($_ = $1) =~ s!\W!_!g; $_ .= $temp/e; $_} ;
print $_, $/ for @filespecs;
__DATA__
me~swimming.jpg
J.R,ewing.jpg
A¬!£$%^&*()-_+={}[]'@;:~\#\"<>,./|\?.jpg
pic.
####
C:\test>199139
me_swimming.jpg
J_R_ewing.jpg
A___________________________________.jpg
pic.
C:\test>