Ruby での正規表現

UNIX の egrep コマンドに相当するプログラムを作ってみよう。 egrep.rb:

#!/usr/koeki/bin/ruby

while station = gets
    if /a.a/i =~ station
    print station
    end
end

を作る。データを取り込む変数を station とする。

# # while -- end の条件
# # "変数 = gets" : 変数にデータを 1 行ずつ gets する

while -- end 文の中は if -- end が入っており、 ここで検索と一致するかどうか調べている。

# # if -- end の条件 
# # "/あいまい検索/i =~ 変数"
# #
# # / A / =~ B : 検索したいパターン A が データを読みこませた変数 B と等しいかどうか
# # /  /i : 大文字小文字は問わないで検索

=~ は比較演算子。検索パターンをプログラムに仕込んでおく方法なので、 データを探すには、

% egrep.rb 検索するファイル名

として、実行する。

/ / の中身を変えていろいろ試してみよう。

本日の講義目次 / 基礎プログラミング I / 2007 年度

Madoka Nishimura <madoka.koeki-u.ac.jp>