From: "David A. Black" Date: 2008-07-07T07:01:51+09:00 Subject: Re: .include? for string Hi -- On Mon, 7 Jul 2008, Chris Chris wrote: > Hi, > > I have an array a > > => [["abc", "def", "ghi|ghi|kl"], ["jkl", "mno", "ghi|pqr"], ["stu", > "vwx", "yz|abc"]] > > Some strings contain the pipe character. > > I want to delete all the arrows that do NOT contain a certain string. > > I tried this: > > a.delete_if { |x| !x.include? "ghi|ghi" } > > => [] > > Of course, the array I need would be > => [["abc", "def", "ghi|ghi|kl"]] > > > I couldn't figure out a work around. Any wildcards available for string > checking in Ruby? Any ideas? Maybe you want this: a.delete_if {|ary| !ary.any? {|string| string.include?('ghi|ghi') } } or something like that. David -- Rails training from David A. Black and Ruby Power and Light: Intro to Ruby on Rails July 21-24 Edison, NJ Advancing With Rails August 18-21 Edison, NJ See http://www.rubypal.com for details and updates!