Thanks for the help! Now a question on your alternative: >>> Dave Thomas <Dave / thomases.com> 03/15/00 01:36PM >>> By the way, there's another fun Ruby trick for doing this kind of thing. You could code up a simple iterator which only returns non-blank non-comment lines def nonCommentLines(aFile) aFile.each { |line| line.gsub!(/#.*/, '') yield(line) unless line =~ /^\s*$/ } end File.open(ENV["ORACONF"]) { |conf| nonCommentLines(conf) { |line| print line } } >>>snip!<<< Isn't this alternative more costly in terms of time? I know OOP isn't known for being fast, but.... It also seems to be much more complex - a yield and gsub! instead of a simple pattern-match.