Christian Kruse: Netscape ist tod? Aetschibaetsch! Reingelegt!

Beitrag lesen

Hiho,

Finde ich sehr schön! Aber sag mal, wäre das:

s//<DATA>/e;
s/([^\s])/ord($1)%2?chr(ord($1)-5):chr(ord($1)-3)/sieg;
s//$_/ee;

nicht besser zu lesen? ;-)

Das soll ja gar nicht zu lesen sein ;-)

  • Wohin speichert Perl bei "s//<DATA>/e;" das Ergebnis? Nach $_? Wenn ja,
      wieso funktioniert dann "s/$_/<DATA>/e;" nicht?

Jupp, nach $_
Und wer sagt, dass das nicht funktioniert? ;-)

  • Wieso funktioniert "s/([^\s])/ord($..."
      aber nicht         "s/(.)/ord($..."?

Weil einige Whitespaces in dem string drin sind (Newline-zeichen, um genau zu sein) und
das dann einen Compile Error gibt.

Gruss,
 Christian
 http://wwwtech.de

s s^s<DATA>se;s (([^\s]))(ord($1)%2?
chr(ord($1)-5):chr(ord($1)-3))sieg;s s^s$_see;
__END__
uwlsy%*Sr%kqdphv%yr%AFN4%dy%zzzyhfm3ihC*1'as'>