How to check for where a text file begins?

Hello,

Im working with some imported text files and I need check where the
first 2 lines of text occur. The files can have white space in the
beginning, so I cant just do a split("\n") and take the first two
elements of the array. Im a bit confused about this stuff. Here is
what I’ve been trying to do with regular expressions, but no results
yet:

def find_first_two_lines(file)
/\S\n\S/.match(file)
end

If anyone has any ideas, please do share!

Thanks in advance!

def find_first_two_lines(text)
text.strip.split("\n").slice(0,2)
end

Returns an array of the first two non whitespace lines delimited by \n

(\n is also included in whitespace per strip… handly)

Regards

Mikel L.

2007/7/3, Al Cholic [email protected]:

/\S\n\S/.match(file)
end

If anyone has any ideas, please do share!

What exactly do you want to do with them? If you have your file
contents in a single string you can do s.sub(/^\s+/, ‘’) in order to
get rid of all leading whitespace. You can as well do the checking
during reading, probably like this:

contents = nil
io.each do |line|
contents = “” if contents.nil? && /^\s*$/ =~ line
contents << line if contents
end

Kind regards

robert

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs