- ベストアンサー
検索対象を変数に与えてマッチング
Rubyの初心者です。次のサンプルがマッチングできない、 書き方を教えてくださいませんか。 #!/usr/bin/env ruby key = "キーワード" while gets $_.chomp! puts $_ if $_ =~ /"#{key}"/ end puts 文を puts $_ if $_ =~ /キーワード/ に書き買えば、検索はできますが、変数に与えてマッチング することはできないでしょうか。 ご教示を宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> puts $_ if $_ =~ /キーワード/ と同じ内容にしたいのなら、 puts $_ if $_ =~ /#{key}/ です。 > puts $_ if $_ =~ /"#{key}"/ だと、 puts $_ if $_ =~ /"キーワード"/ と同じです。
その他の回答 (1)
noname#207526
回答No.2
$_を使った書き方をしたことがありませんが、単にこれを代入するだけです。 例: val = $_ もしputsの行を変数に入れたいなら、putsせずに代入に変えます。例: val2 = $_ if ....
お礼
ご回答して頂き有難う御座いました。