http://www.perlmonks.org?node_id=563550


in reply to Re: Handling bits in Perl
in thread Handling bits in Perl

If ikegami's excellent suggestions aren't enough, there's also a Bit::Vector module on CPAN.

One nice thing about the bitwise operators in Perl is that you can use them on whole strings, not just on integers. For example,

use strict; my $x = "abcdefghijklmnopqrstuvwxyz"; my $y = ("A" ^ "a") x length($x); my $z = $x & ~$y; print "\$z = $z\n";
This outputs $z = ABCDEFGHIJKLMNOPQRSTUVWXYZ. (This is just an example, not recommended for case conversion because it screws up non-alphabetic characters.)

You should also be aware of pack/unpack "H*", pack/unpack "B*", or "b*, to print bit strings for debugging, to input long constants, etc.

Replies are listed 'Best First'.
Re^3: Handling bits in Perl
by ikegami (Patriarch) on Jul 25, 2006 at 15:35 UTC
    Unforunately, you can't use << and >> on strings :(
      Good point!
      That would be cool, though.