in reply to Regex for weird characters
/[^a-zA-Z0-9_]/ && print "funny things appear in $_\n" for qw/not_funn +y funny1-/; [download]
But that still doesn't account for things like ? or > or <. I'm taking you too litterally when you say shitf-# keys... :-)