初めてのPerl 第8章 正規表現によるマッチ 練習問題2

パターンテストプログラムを使い、ワードのどれかがaで終わっていたらマッチするようなパターンを作ってください。wilma&fredなどにもマッチするように実装してください。

#!/usr/bin/perl

use strict;
use warnings;

use 5.010;

#末尾がaで終わるものにマッチさせる。
while (<>) {    
  chomp;
  if ($_ =~ /\b\w*a\b/) {
    print "Matched: |$`<$&>$'|\n"; 
  } else {
    print "No match: | $_ | \n";
  }
}

実行したコマンドは以下の通りです。

$ ./practice2.pl < names.txt

引数として渡したnames.txtの内容は以下のようになります。

fred
wilma
barney
wilma&betty
camellia
anna
te
a
Mrs. wilma Frintstone

結果は以下の通りです。

No match: | fred |
Matched: |<wilma>|
No match: | barney |
Matched: |<wilma>&betty|
Matched: |<camellia>|
Matched: |<anna>|
No match: | te |
Matched: |<a>|
Matched: |Mrs. <wilma> Frintstone|