Foreach.rb
This content was produced by an LLM and could include errors.
このスクリプトは File.foreach の入れ子ループで2つのテキストファイルを突き合わせ、完全一致する行を見つけるたび MATCHED: ... を出力します(b.txt の 9, 2, 6 が該当)。foreach は1行ずつ読むため readlines よりメモリ効率が良く、内側ループの break により外側の各行は最初の一致で打ち切られます。比較には改行コードを含む文字列がそのまま使われます。
File.foreach('input/file/foreach_b.txt') do |line1|
File.foreach('input/file/foreach_a.txt') do |line2|
if line1.eql?(line2)
puts("MATCHED: #{line1}")
break
end
end
end
MATCHED: 9
MATCHED: 2
MATCHED: 6
#=> nil
Ruby 4.0.6