Moin!
$string =~ s/(.)/chr((ord($1) > 250 || ord($1) < 5) ? (ord($1) > 250 ? (ord($1) - 250) : (ord($1) + 250)) : (ord($1) - 5))/eg;
Mmh.. Du musst Dich schon entscheiden, ob Du nun 5 addieren oder subtrahieren willst. Fuer den Fall der Subtraktion schlage ich diese kleine Optimierung vor (untested):
$string =~ s/(.)/chr((ord($1) + 256 - 5) & 0xFF)/eg;
(Die Addition von 256 soll einen Unterlauf unter 0 vermeiden. Normalerweise sollte das nicht noetig sein, aber wer weiss, was auf irgendeiner exotischen Plattform alles passieren kann.)
So long