From: Shin-ichiro HARA Date: 2005-10-15T10:43:43+09:00 Subject: [ruby-list:41307] Re: 条件に合う見出しの内容だけを抽出 原です。 週末に課題が出るとコメントが沢山つきますね。:-) 確かに要求が曖昧だと私も思うんですけど、さしあたって search = ["Title-1", "Title-B"] Patterns = [/^(Title-\d+)$/, /^(Title-[A-Z]+)$/] def title(line) Patterns.each_with_index do |r, i| return [i, $1] if r =~ line end nil end a = [] File.foreach('data2.txt') do |line| line.strip! if x = title(line) a[x[0]..-1] = [x[1]] elsif search.zip(a).all?{|s, d| s == d} puts line end end ぐらいでどうでしょうか。