Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Re: Trouble with Transliterate Function

by jwkrahn (Monsignor)
on Aug 29, 2013 at 09:31 UTC ( #1051392=note: print w/replies, xml ) Need Help??

in reply to Trouble with Transliterate Function

my $mask_input = <INPUT>; ... my $lastEnd = 1; while ( <INTERVAL> ) { my (undef, $start, $end) = split '\s', $_; ## change everything from the end of the last range ## to the start of this range to 'N' substr( $mask_input, $lastEnd, $start ) =~ tr[\x00-\xff][N]; $lastEnd = $end; } ... print OUT "$mask_input";

Another way to do that:

chomp( my $mask_input = <INPUT> ); my $new_mask = 'N' x length $mask_input; ... while ( <INTERVAL> ) { my ( undef, $start, $end ) = split; --$start; substr $new_mask, $start, $end - $start, substr $mask_input, $star +t, $end - $start; } ... print OUT "$new_mask\n";

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1051392]
[moritz]: seems there's a size limit for hostenum, and the error message just sucks
[vrk]: None, other than the location of the error: auto/NetAddr/IP/
[vrk]: Aha, there's a reference to "bug report 82719" in NetAddr/'s sub _splitref.
[moritz]: wow, that's their idea of an "improved error message"
[moritz]: how about "This network is too large to enumerate all host addresses." or so?
[vrk]: Well, there's a call to notcontiguous() before the error, whose description is "counts the bit positions remaining in the mask when the rightmost '0's are removed"
[vrk]: Clear as mud!

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (9)
As of 2017-04-25 07:44 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (449 votes). Check out past polls.