• ベストアンサー

検索対象を変数に与えてマッチング

Rubyの初心者です。次のサンプルがマッチングできない、 書き方を教えてくださいませんか。 #!/usr/bin/env ruby key = "キーワード" while gets $_.chomp! puts $_ if $_ =~ /"#{key}"/ end puts 文を puts $_ if $_ =~ /キーワード/ に書き買えば、検索はできますが、変数に与えてマッチング することはできないでしょうか。 ご教示を宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10359)
回答No.1

> puts $_ if $_ =~ /キーワード/ と同じ内容にしたいのなら、 puts $_ if $_ =~ /#{key}/ です。 > puts $_ if $_ =~ /"#{key}"/ だと、 puts $_ if $_ =~ /"キーワード"/ と同じです。

jorufii
質問者

お礼

ご回答して頂き有難う御座いました。

その他の回答 (1)

noname#207526
noname#207526
回答No.2

$_を使った書き方をしたことがありませんが、単にこれを代入するだけです。 例: val = $_ もしputsの行を変数に入れたいなら、putsせずに代入に変えます。例: val2 = $_ if ....

関連するQ&A

専門家に質問してみよう