9章練習問題

問1[3]

/($what){3}/

OK

問2[7]

#!/usr/bin/perl -w
use strict;

@ARGV = "/usr/lib/perl5/5.8/pods/perlfunc.pod";

while (<>) {
    if (/^=item\s+([a-zA-Z_]\w+)/) {
        print "$1\n";
    }
}

\w+ではなくて、\w*、うっかりミス。

問3[5]

#!/usr/bin/perl -w
use strict;

@ARGV = "/usr/lib/perl5/5.8/pods/perlfunc.pod";
my %items;

while (<>) {
    if (/^=item\s+([a-zA-Z_]\w+)/) {
        $items{$1}++;
    }
}

foreach (sort keys %items) {
    if ($items{$_} >= 3) {
        print "$items{$_} : $_\n";
    }
}

\w+を\*に直す以外は、OK