That's a good piece of rather in-depth discussion ;).
And this is the first time that I understood the subtle
workings of the range operator. It's really a
'flip-flop' kind of an operator. Here's the way I'd use it:
-----------------
#!/usr/local/bin/perl -w
use strict;
# TEST for '..' (and '...') operators
#
# Description of the range operator is found
# at the END of this file.
#
print "TEST 1: Skipping perldoc comments.\n----------------\n";
while (<DATA>) {
next if (/^=head/ .. /^=cut/);
print $_;
}
__DATA__
# pretend this is a config file
var = 0;
var1 = 0;
=head
this should be skipped by
the /^=head/ .. /^=cut/ range
operator.
some paragraph here
some paragraph here
=cut
var2 = 0;
-----------------
Your example with data is also very neat one. I guess one could use the range operator with special objects that serve as data iterators (say, list iterators etc.)
|
"There is no system but GNU, and Linux is one of its kernels." -- Confession of Faith
|