egrep.rb では、検索するパターンをプログラムの中に仕込んでおく必要がある。 検索パターンをキーボードで入力して探すように変更したい。 Regexp method を使おう。regexp.rb
#!/usr/koeki/bin/ruby STDERR.print("検索パターン : ") pattern = STDIN.gets.chomp request = Regexp.new(pattern, true, "e") while station = gets if request =~ station print station end end
# # STDIN : 与えられたデータを処理するに際して、 処理の方法をキーボードからの入力により操作したいときに使われる。
STDIN は StanDard INput (標準入力) の略である。 通常キーボードで操作するコマンドを入力するためである。 pattern は探す文字列をしまう変数である。 request はオプションと文字コードを指定した検索パターンをしまう変数である。
# # Regexp.new(変数, オプション, 文字コード): 正規表現したい文字列にオプションをつける。
"chomp" は、文字列を切り取るという method である。 "true" は egrep コマンドの -i と同じで、大文字小文字を区別しない、 という意味である。 "e" で漢字コードを EUC jp に指定している。 実行方法はこちら
Madoka Nishimura <madoka.koeki-u.ac.jp>