2011年6月3日金曜日

開発環境

  • Mac OS X Snow Leopard (OS)
  • TextWrangler(Text Editor) (いずれはBBEditを入手したい!)
  • Script言語:Perl

『初めてのPerl 第5版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-427-9) の7章(正規表現によるマッチ), 7.4(練習問題)、2を解いてみる。

 

2.

やり方の1つ。(「やり方は何通りもある」(TIMTOWTDI(There Is More Than One Way To Do It.)))

コード(TextWrangler)

#!/usr/bin/perl
use strict;
use warnings;

while(<>){
  # 文字クラスを使用
  if(/[fF]red/){
    print "Matched: $_";
    }
}

入出力結果(Ternimal)

前問と違い、frederic, Alfredに加えてFredもマッチする。

次は"fred flinstone"と彼の友人の名前が入っている数行の小さなテキストファイルをプログラムに入力として与える。何行目でマッチしているか分かるように上記のコードを少し修正。

コード(TextWrangler)

#!/usr/bin/perl
use strict;
use warnings;

my $line=0;
while(<>){
  $line++;
  if(/[fF]red/){
    print "line $line: $_";
    }
}

入出力結果(Terminal)

前問と同じように以下からファイルのsample_textを入力として与えたけど、文章中に「Fred」が無く前問の入出力結果と同じに。。

ファイルの用意が必要な場合はO'Reilly Japan - 初めてのPerl 第5版の関連ファイルのプログラム例に含まれているものを使用しています。

0 コメント:

コメントを投稿