Ruby/Perl grep
PerlにおけるgrepとRubyにおけるEnumerable#grepは、パターンマッチングにHitしなかったときの挙動が、それぞれ異なる。
irb(main):002:0> s=["Hello"]
=> ["Hello"]
irb(main):003:0> s.grep(/H/)
=> ["Hello"]
irb(main):004:0> s.grep(/W/)
=> []
$ perl -e ' @s=("Hello");print "nil" if grep(/W/,@s) == nil ;'
nil
$ perl -e ' @s=("Hello");print "nil" if grep(/H/,@s) == nil ;'
Rubyでは部分文字列マッチングの際は、String#include?という素直なメソッドがあるのでこれを使おう。