94、使用模式测试程序,创建一个模式,用于匹配任何以字母 a 结尾的单词(这里的单词是指 \w 所定义的单词)。该模式是否能匹配 ‘wilma’ 但不匹配 ‘barney’?它是否能匹配 ‘Mrs. Wilma Flintstone’?’wilma&fred’ 呢?
可创建模式 /\w*a\b/
进行匹配。此模式可匹配 wilma
,不匹配 barney
;能匹配 'Mrs. Wilma Flintstone'
中的 'Wilma'
;也能匹配 'wilma&fred'
中的 'wilma'
。
95、修改一个程序,将输入内容里每个 Fred(不区分大小写)替换为 Wilma,每个 Wilma 替换为 Fred。例如,像 fred&wilma 这样的输入在输出中应该显示为 Wilma&Fred。
#!/usr/bin/perl -w
use strict;
if (@ARGV != 1) {
die "Usage: $0 <input_file>";
}
my $input_file = $ARGV[0];
my $output_file = $input_file . ".out";
open(my $in_fh, '<', $input_file) or die "Can't open $input_file: $!";
open(my $out_fh, '>', $output_file) or die "Can't open $output_file: $!";
while (my $line = <$in_fh>) {
$line =~ s/(?i)fred/Wilma/g;
$line =~ s/(?i)wilma/Fred/g;
print $out_fh $line;
}
close($in_fh);
c