in reply to Using substr to remove characters

It's a shell quoting issue, not a substr issue. Change the single quotes around the empty string to double quotes, it'll work fine.
$ perl -e 'my $str = "This_is_a_song_.mp3"; substr($str, 14, 1, ""); p +rint $str."\n";' This_is_a_song.mp3