in reply to More Efficient Subroutine

use code tags...see the help about what they are.

that will get you more efficent perlmonk advice, but that's all i know :)

=========================================================== sub encrypt { my ($self, $STRING) = @_; my $ENCRYPTED_STRING = ''; my $LENGTH = length($STRING); my @STRING = split(//,$STRING); my $ENCRYPTION_MAP = "abcdefghijklmNOPQRSTUVWXYZABCDEFGHIJKLMnopq +rstuvwxyz0123456789.&@="; my @ENCRYPTION_ARRAY = split(//,$ENCRYPTION_MAP); my $MAP_LENGTH = length($ENCRYPTION_MAP); my $MAP_HALF = length($ENCRYPTION_MAP)/2; for ($i=0; $i < $LENGTH; $i++) { my $CHARACTER = $STRING$i; my $POSITION = index($ENCRYPTION_MAP, "$CHARACTER"); if ($POSITION ($POSITION + $MAP_HALF) % $MAP_LENGTH"); } } return $ENCRYPTED_STRING; } ################################## # CHARACTER ESCAPING SUBROUTINE: # ################################## sub EscapeCharacter { my $CHARACTER_TO_ESCAPE = shift; if(($CHARACTER_TO_ESCAPE eq '&') || ($CHARACTER_TO_ESCAPE eq '\\') + || ($CHARACTER_TO_ESCAPE eq ' ') || ($CHARACTER_TO_ESCAPE eq '%') || ($CHARACTER_TO_ESCAPE eq '@') | +| ($CHARACTER_TO_ESCAPE eq '/') || ($CHARACTER_TO_ESCAPE eq '#') || ($CHARACTER_TO_ESCAPE eq '=') | +| ($CHARACTER_TO_ESCAPE eq '"') || ($CHARACTER_TO_ESCAPE eq "'") || ($CHARACTER_TO_ESCAPE eq '+') | +| ($CHARACTER_TO_ESCAPE eq '|') || ($CHARACTER_TO_ESCAPE eq '?')) { $CHARACTER_TO_ESCAPE = ord("$CHARACTER_TO_ESCAPE"); $CHARACTER_TO_ESCAPE = sprintf "%x", $CHARACTER_TO_ESCAPE; return ".$CHARACTER_TO_ESCAPE"; } else { return $CHARACTER_TO_ESCAPE;} }

-- I'm a solipsist, and so is everyone else. (think about it)