[Vienna-pm] Gibt es eigentlich ..
Wolfgang Laun
Wolfgang.Laun at thalesgroup.com
Fri Apr 27 01:10:48 PDT 2007
Die gewünschten Zeichen (max. 16) können mit tr/// auf [0-9a-f]
abgebildet werden. Diese können mit pack auf die halbe Länge gepackt
werden. Die Umkehrung ist trivial. Vermutlich ist es notwendig, die
ursprünglichen Länge mitzupacken, da mit 'H*' immer eine gerade Anzahl
von Zeichen entpackt wird (vgl. 2. Test).
my $s = "abcdefghijklmnop";
print "s=$s\n";
$s =~ tr/abcdefghijklmnop/0123456789abcdef/;
my $p = pack( 'H*', $s );
print "length p = " . length( $p ) . "\n";
my $u = unpack( 'H*', $p );
$u =~ tr/0123456789abcdef/abcdefghijklmnop/;
print "u=$u\n";
s=abcdefghijklmnop
length p = 8
u=abcdefghijklmnop
s=a
length p = 1
u=aa
mfg
WLaun
gooly at gmx.at wrote:
>Hallo und Guten Morgen!
>
>Gibt es eigentlich in Perl die Möglichkeit einen String mit einer
>definierten Anzahl von Zeichen, die natürlich nicht alle umfassen,
>sondern zB nur 12 oder 16 Zeichen nur: '0' .. '9', '.', ';' (also
>Zahlen und ein paar andere) separat, zeilenweise als String zu
>komprimieren? Die üblichen Verdächtigen sind Module, die aber ganze
>Files komprimieren oder eben den gesamten Zeichensatz.
>
>Vielleicht kennt jemand noch etwas vergangenen Zeiten?
>Danke und schon mal ein schönes Wochenende,
>Calli
>_______________________________________________
>Vienna-pm mailing list
>Vienna-pm at pm.org
>http://mail.pm.org/mailman/listinfo/vienna-pm
>
>
More information about the Vienna-pm
mailing list