基礎プログラミング I 第07 回 正規表現と Ruby 言語でのプログラミング データを読み込むようにするには

データをいちいち指定しなければならないのは面倒なので、 プログラムに指定しておくことにする。regexp_cutout.rb から regexp_readdata.rb を作る。open -- end を用い、ファイルを指定しする。 データを開いて (OPEN) 読み込むのでモードは r(Read) である。

#!/usr/koeki/bin/ruby

STDERR.print "検索パターン : "
pattern = STDIN.gets.chomp
request = Regexp.new(pattern, true, "e")

open("station.dat","r") do |candidate|
  while  station = candidate.gets
    if request =~ station
      # print station
      if /(\S+)\s+(\S+)\s+(\S+)\s+(\S+)/ =~ station
        printf("%s駅\n", $1)
      end
    end
  end
end

実行は

./regexp_readdata.rb

だけでよい。

# open("ファイル名","モード") do |変数|
#         :
#   変数 に対して行う処理
#         :
# end

本日の講義 / 講義ノート / 教員トップページ